我有一个基于Vue CLI3的项目,其中的一个组件使用了D3.js。这在开发服务器中工作正常。但是,当我运行build
并使用dist文件夹中的结果文件时,它在运行时在浏览器中失败,并显示以下消息:
Uncaught TypeError: Cannot read property 'document' of undefined
at d3.js:8
at Object.6e58 (d3.js:1)
at o (bootstrap:78)
at Object.fc26 (index.js:12)
at o (bootstrap:78)
at Object.046b (plotcss.js:3)
at o (bootstrap:78)
at Object.c4e0 (core.js:18)
at o (bootstrap:78)
at Object.c17d (core.js:11)
我找到了这个答案来解释原因: D3.js : Uncaught TypeError: Cannot read property 'document' of undefined
这具有指向该页面How to remove global "use strict" added by babel的指针,该页面指出
Babel 6由于Babel 6现在已完全加入插件的使用,而不是 将useStrict列入黑名单,您只是不包括strict-mode插件。 如果您使用包含它的预设,我认为您必须 创建一个自己的人,包括所有其他人,而不是那个。
但是在最新的VUE CLI流程中我找不到如何实现这一目标。我尝试在babel.config.js中进行以下设置;但在构建时失败:
blacklist: ["useStrict"],
关于如何在VUE CLI流程中完成此操作的任何建议?