草庐IT

babel-polyfill

全部标签

javascript - Babel [karma-babel-preprocessor] 不为 Karma 测试转换 ES6->ES5

我们已经安装了karma,它使用mocha和chai进行测试。我们正在尝试使用karma-babel-preprocessor将babel直接集成到karma中,以将我们的ES6文件转换为ES5以运行。单独使用mocha与babel一起工作,即mocha测试命令,但我们尝试使用karma而不是它不起作用。karma.conf.js片段:frameworks:['mocha','chai'],//preprocessmatchingfilesbeforeservingthemtothebrowser//availablepreprocessors:https://npmjs.org/br

javascript - 同时导入 ES6 和 ES7 core-js polyfill 有什么用吗?

为Object导入ES6polyfill是否有用或多余?import'core-js/es6/object';还有Object的ES7polyfill?import'core-js/es7/object';ES7polyfill是否涵盖了所有ES6功能,我可以不使用ES6polyfill,还是ES6polyfill添加了ES7polyfill中不存在的功能? 最佳答案 这个答案涉及core-js@2。从core-js@3开始,不再有单独的ES6和ES7前缀。这是由于ECMAScript的开发方式。您可以在core-js@3,babe

javascript - 带有 webpack 的 Intl.js polyfill/shim?

我正在使用React-Intl与webpack我需要Intlshim以支持Safari和IE,但我不想为已经支持Intlspec的浏览器加载它.polyfill非常大(900kb),我如何确保它只在不支持它的浏览器中加载? 最佳答案 您需要做一些事情。确保要求intl/Intl加载核心库而不是所有相关国家/地区。这会将库的大小从大约900kb减少到大约150kb。使用webpack的require.ensure或require([])函数仅在需要时动态要求Intl.js。这将为Intl.js文件创建一个单独的包,该文件将根据需要加载

javascript - 即使使用 Polyfill,IE 也不支持 forEach。

我已将forEachpolyfill添加到我的JavaScript文件的顶部,但InternetExplorer仍然说它不支持该功能。我基本上想遍历querySelector的结果,但是我确实在我的脚本中的一些其他数组对象上使用了forEach。这在Chrome上一切正常。//ProductionstepsofECMA-262,Edition5,15.4.4.18//Reference:http://es5.github.io/#x15.4.4.18if(!Array.prototype.forEach){Array.prototype.forEach=function(callbac

javascript - Babel 不转译箭头函数 (Webpack)

当运行webpack和babel时,生成的bundle.js仍然包含箭头函数。在InternetExplorer10中运行时,这会给我一个语法错误。我希望babel将箭头函数替换为IE可以运行的正常函数。我的package.json具有以下devDependencies:"devDependencies":{"babel-cli":"^6.26.0","babel-core":"^6.26.0","babel-loader":"^7.1.4","babel-preset-env":"^1.6.1","babel-preset-es2015":"^6.24.1","babel-prese

javascript - 用于 ie11 的 CSS 自定义属性 polyfill

有没有办法用JavaScript为ie11pollyfill自定义CSS属性?我在考虑加载时,检查浏览器是否支持自定义属性,如果不支持,则对属性进行某种查找和替换。这可以通过JavaScript或某些库实现吗?谢谢 最佳答案 看看这个(我的)Custom-Properties-Polyfill:https://github.com/nuxodin/ie11CustomProperties工作原理该脚本利用了IE具有最小自定义属性支持的事实,其中可以在考虑级联的情况下定义和读取属性。.myEl{-ie-test:'aaa'}//onl

javascript - ECMAScript 6 在对象解构中扩展了语法。支持 TypeScript 和 Babel

以下是有效的ECMAScript6吗?最新版本的Babel似乎支持它,但TypeScript不支持它。我找不到任何处理这种情况的ES6引用资料。vara={foo:'foo'};varb={...a}; 最佳答案 不,这不是有效的ECMAScript6。ES6只支持函数参数和数组解构中的剩余语法,以及函数调用和数组构造中的扩展语法。ItseemstobesupportedbythelatestversionofBabelBabel确实实现了objectRestSpreadES7proposal作为experimentalplugin

Javascript 6to5(现在是 Babel)导出模块的使用

我还是个初学者,我尝试将一个类导出和导入到一个主文件中,另一个类在其他类文件中并使用它们。然后用6to5(现在是Babel)吞噬ES5代码。//filea.jsimportBfrom'b.js';classA{constructor(){B.methodB();}}exportdefaultA;//fileb.jsclassB{methodB(){console.log('hifromb');}}exportdefaultB;//filemain.jsimportAfrom'a.js';newA();我的gulp文件:vargulp=require('gulp');varto5=req

javascript - 运行 React App 时找不到模块 '@babel/plugin-transform-react-jsx-source'

我刚刚使用create-react-appaquastars创建了一个React应用程序,然后使用yarnruneject弹出依赖项,当我运行该应用程序时,我得到以下信息错误。Cannotfindmodule'@babel/plugin-transform-react-jsx-source'我什么都没做!我需要做什么才能启动并运行它?任何帮助将不胜感激。 最佳答案 solutionby@xiaobo实际上对我来说是不够的。将expo升级到v32后,我花了一段时间才弄清楚这一点,所以这就是我所做的,以防其他人遇到同样的问题。(来自ex

javascript - Babel 6 react JSX 转换器 - 禁用严格

问题我正在使用babel6进行ReactJSX转换。但是我没有使用react预设,我只使用“transform-react-jsx”插件(并尝试禁用严格模式选项),这是我的.babelrc{"plugins":[["transform-react-jsx"]],"sourceMaps":true,"strictMode":false}但是我需要一个使用“with”(不受我控制)的第三方javascript,它会发出以下错误:[SyntaxError:foo.js:'with'instrictmode..]所以我需要禁用严格模式,这与thisissue的问题相同但是我没有使用es6/es