问题标签 [babel-polyfill]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - @babel/polyfill (Babel 7 beta) 导致 SyntaxError
请不要将此标记为任何 Babel 6问题的重复,因为这是专门关于 Babel 7的!
我正在尝试新的 Babel 7 beta(@babel/polyfill@7.0.0-beta.32
等),但在使用@babel/polyfill
.
概括
- 当我使用 Webpack 构建项目时,一切正常。
- 当我尝试从命令行运行它时,我得到一个 SyntaxError。
我可能只是忘记了一些简单的事情,但我一生都无法弄清楚是什么。任何想法是什么问题?
系统规格
- macOS High Sierra 开发者测试版 5
- 节点 8.9.1
- NPM 5.5.1
文件
.babelrc.js
src/index.js
src/main.js
命令行
错误信息
包.json
webpack.config.js
webpack - babel vs babel-core vs babel-loader vs babel-preset-2015 vs babel-preset-react vs babel-polyfill
我正在为我的 React 项目设置 Webpack,在babel
、babel-core
、和. 我知道将 ES7 或 ES6 代码转换为 ES5 需要 Babel,但在我的版本中,我已经安装了除 Babel 之外的所有这些依赖项,它们也作为.babel-loader
babel-preset-2015
babel-preset-react
package.json
devDependencies
有人可以解释所有这些之间有什么区别以及为什么我的项目需要所有这些吗?没有任何单一的依赖来替换它们吗?如果它们如此重要,为什么它们被包括在内 devDependencies
?
node.js - 使用 babel-preset-env 定位节点 8 时,Array.prototype.values 未填充
使用 babel-preset-env 并定位节点 8 时,Babel 不是 polyfiling array.values()。
.babelrc
代码:
我使用 npm 脚本编译它:
编译输出为:
babel src --out-dir ./dist --source-maps
节点 dist/server.js 输出:
当我尝试使用 babel-node 运行它或在 .babelrc 中定位节点 4 时,有什么奇怪的,array.values 被正确地填充了
编译输出:
问题可能出在哪里?
node.js - babel-polyfill 导入不在转译代码中
我的代码的入口点从以下导入开始:
但是,运行时我看到的global._babelPolyfill
是undefined
. 我还注意到,在我的转译代码中,没有require('babel-polyfill')
.
这是为什么?
我的猜测是 babel 认为这babel-polyfill
不是必需的。但是,当我不包含它时,会出现以下错误:
所以我绝对需要它。我的猜测是,不知何故,依赖项(我稍后在我的代码中导入的另一个节点模块)配置不正确,并且当 babel 转换我的代码时它没有检测到它,所以它仍然认为 babel-polyfill 不是必需的。
我希望有实际的文档来备份,如果确实如此,为什么会这样。
更新为什么这与另一个问题不同:接受的解决方案是使用 babel-polyfill,但我已经在这样做了。我的问题是为什么 babel-polyfill 没有在我的转译代码中导入,因此在我的运行代码中不可用。
babeljs - Babel 7 和 babel-polyfill
更新到 babel 7 beta 后,看起来 babel polyfill 在 bundle 之前没有转译。我更新了所有范围包,例如“@babel/polyfill”:“7.0.0-beta.36”。并将两个文件的导入从 import 'babel-polyfill' 更改为 import '@babel/polyfill'。如何在 babel env 和 babel 中使用 babel/polyfill 7. 在使用 useBuiltIns: 'usage' 时,我应该使用 babel/polyfill 吗?
.babelrc.js
类型.js
index.js
javascript - 使用承诺时反应警告无法设置状态
我正在尝试查询服务器以获取导航项目列表,以便我可以在 init 上构建我的菜单。到目前为止,我已经设法在主页上创建了一个包含 3 个内容的静态页面,其中包括标题、侧边栏和内容。侧边栏是不同类型用户的不同菜单,所以我需要在加载时检索菜单项。
我收到的错误是
只能更新已安装或正在安装的组件。这通常意味着您在未安装的组件上调用了 setState、replaceState 或 forceUpdate。这是一个无操作
更新 4
所以我将我的 api 请求移至index.js
文件并尝试添加评论中提到的条件。现在它只是呈现Loading...
相同的错误
这是IE错误
侧边栏.js
我创建了一个jsfiddle
网页包
即使使用与小提琴中的代码相同的代码,setstate 问题仍然存在。小提琴作品
javascript - ES6 在迭代中导入而不是在顶层导入
这真的是1中的2个问题......
我有一个带有 Express 中间件的 Node 后端。在应用程序进入时,我试图通过迭代加载快速路由。以前这是使用requirejs完成的,但我想放弃所有这些并改用 es6 的导入/导出。
我当前的代码(基于MEAN.js):
我试图以某种方式让我的代码是这样的:
现在,这里出现的主要错误是:
'import' 和 'export' 只能出现在顶层
我可以继续使用requirejs,但这需要我将这些策略文件中的 es6 导出更改回module.exports
.
我babel-polyfill
用来使我能够在服务器上使用 es6 导入/导出。
注意: config.files.server.policies
将是一个相对路径数组。这个数组大小会经常改变,因为我会从我的应用程序中添加/删除模块,这就是为什么最好不要显式导入这些模块,而迭代更可取。
所以我的两个问题是:
- 可以将导入/导出封装在一个函数中(所以不是顶层)
- 可以通过迭代导入多个文件吗?
当我尝试使用 es6 代码时,我预计会出现这种问题,因为它还没有得到完全支持,所以如果这不能完成,那么我会找到另一种方法。
reactjs - 运行时 Webpack 3.10.0 和 babel-polyfill 问题
我目前正在使用 Webpack 3.10.0 以及以下 babel 包。
我的问题是,在运行时我在浏览器控制台上收到以下错误并且页面没有加载。
我的 webpack.config.js 如下所示。
我已按照https://babeljs.io/docs/usage/polyfill/中的说明将 babel-polyfill 导入 Main.js 和 MainInt.js 文件,但我没有使用new webpack.optimize.ModuleConcatenationPlugin()
.
有关如何解决此问题的任何想法。提前致谢 :)