草庐IT

babel-polyfill

全部标签

javascript - 将 async/await 与 babel 一起使用 - 要求 ("babel-polyfill") 行不在构建文件的顶部

我正在尝试将ES2017async/await语法与Babel结合使用。在package.json中,我有"babel":{"plugins":["babel-plugin-transform-async-to-generator"],"presets":["es2015"]}//..."devDependencies":{"babel-cli":"^6.14.0","babel-plugin-transform-async-to-generator":"^6.8.0","babel-polyfill":"^6.13.0","babel-preset-es2015":"^6.14.0"

javascript - Babel es2015 预设不会将 Map 和 Set 转换为 es5

我正在使用gulp-babel将我的es6代码转换为es5gulp.task('build_all_debug',['config','compile'],function(){varstream=gulp.src(['public/js/config.js','public/js/*.js','public/compiled/*.js']).pipe(babel({presets:['es2015']})).pipe(concat('app.js')).pipe(gulp.dest('public/dist'));returnstream;});虽然它大部分工作正常,但实际上并没有转

javascript - babel-plugin-* 和 babel-preset-* 有什么区别

我同时使用插件和预设以及我当前的React应用程序,但从技术上讲我无法让别人理解预设和插件之间的区别。对我来说,两者都是babelloader用来编译代码的javascript文件。 最佳答案 简而言之,一个babelpreset包含多个babel插件。例如,如果只使用箭头函数,则只需要transform-es2015-arrow-functions插件即可。如果你使用了很多ES2015特性,你最好使用babel-preset-es2015,它包含很多插件,包括transform-es2015-arrow-functions。

javascript - 使用 reactjs 和 babel 导出函数

我有一个使用reactjs的项目,它是由babel转译的。我在我的.babelrc中使用es2015和React转换。我目前正在重构,在我的第一遍中,我基本上为我需要的一切做了exportclassfoo。很多这些类实际上应该只是函数,所以我试图这样重写它们,但我总是遇到同样的错误。我的主应用程序文件看起来像这样:importReact,{Component}from'react';import{Foo,Bar}from'./components/ui.js';classApplicationextendsComponent{constructor(props){super(props

javascript - Webpack 2 - babel-loader - 如何排除 node_modules?

自从我升级到Webpack2后,我的“规则”中不能有“排除”。也无法将“排除”传递给“选项”。现在正确的做法是什么?之前:{test:/\.js$/,loader:'babel-loader',exclude:/node_modules/,}现在:{test:/\.js$/,use:[{loader:'babel-loader'}]???}整个配置:constpath=require('path');//constautoprefixer=require('autoprefixer');constpostcssImport=require('postcss-import');const

javascript - 没有 'new' 无法调用 ES6/Babel 类构造函数

我正在尝试创建自定义Quill主题,扩展气泡主题。我面临一个奇怪的ES6继承问题,似乎我无法在我的构造函数中调用super()。这是我的代码:importBubbleTheme,{BubbleTooltip}from'quill/themes/bubble'classLoopThemeextendsBubbleTheme{constructor(quill,options){super(quill,options)}extendToolbar(toolbar){super.extendToolbar(toolbar)this.tooltip=newLoopTooltip(this.qu

javascript - babel-node 安装 "Only RSA and DSA public keys are allowed"

我在安装babel-node时遇到问题npmi-gbabel-node>babel-node@6.5.2postinstall/Users/.../.../node_modules/babel-node>nodemessage.js;sleep10;exit1;/Users/.../.../node_modules/ssh-key-to-pem/index.js:210thrownewError('OnlyRSAandDSApublickeysareallowed');^Error:OnlyRSAandDSApublickeysareallowed 最佳答案

javascript - 使用 Babel 和 Webpack 生成多个输出

我想将我的Javascript应用程序转换成两个不同的Javascript文件:第一个用于旧版浏览器第二个用于现代浏览器计划为现代移动浏览器构建更小的版本,同时仍支持较旧的遗留桌面浏览器。babel-cli允许预设,因此我可以将其设置为“env”,但似乎没有办法在.babelrc这意味着必须更改.babelrc文件。Webpack允许使用babel-loader来指定目标浏览器,但似乎没有办法针对不同的浏览器目标使用它两次环境有什么方法可以简单地实现我所需要的吗? 最佳答案 所以我自己找到了一种方法,不确定它是否是最优雅的解决方案,

javascript - 为什么 console.log() polyfill 不使用 Function.apply()?

我一直在研究一些流行的console.log()包装器/polyfills:PaulIrish'sBenAlman'sCraigPatik's我注意到他们都接受多个参数,但他们都做这样的事情:console.log(arguments);结果如下(在Chrome中):然而,至少在像Chrome或Firefox这样的现代浏览器中,console.log()也接受多个参数,因此这会产生(恕我直言)出色的输出:console.log.apply(console,arguments)结果如下(在Chrome中):为什么我应该避免使用带有多个参数的console.log.apply()有什么特别

javascript - 不用Webpack,在客户端使用Babel转译导入导出?

我可以使用Babel编译JSX并通过全局命名空间导出变量吗?我不想运行随机的Webpack服务器。我已经全神贯注于ES6、JSX、Babel和React,对另一个使如此简单的任务复杂化的库不在乎最终我想导出我的React类并导入另一个类。从理论上讲,它应该只在满足依赖项之前阻塞,我不明白这怎么可能是一种反模式,因为我的所有代码和外部依赖项都在本地缓存。这是的默认行为标签,只是不是varmessage="helloworld";console.log(message);//undefined我可以使用ES6导出和导入,但不能使用另一个随机文件服务器 最佳答案