我在一些包含 openlayers 的 React 组件上运行 mocha,新的更新ol 模块都只用 ES6 编写,它们必须在传递给 mocha 进行测试之前进行转译。
我正在使用@babel/register
并且我需要一个babel-register.js
文件,其中我需要 @babel/register 并输入所有选项和预设/插件。我没有编译,我得到你将在下面看到的错误。我想要的只是需要 node_modules/ol 并递归地转换所有文件和子文件夹,正则表达式是否正确?还有什么问题吗?我的 babel-register.js 如下:
require("@babel/polyfill");
require("@babel/register")({
ignore: [
// When a file path matches this regex then it is **not** compiled
'node_modules/(?!(ol)/)'
],
presets : ["react-app", "@babel/preset-env"],
plugins : [
"@babel/plugin-transform-modules-commonjs",
"inline-react-svg",
"@babel/plugin-syntax-dynamic-import",
"@babel/plugin-transform-runtime"
],
//root: __dirname,
extensions: [".es6", ".es", ".jsx", ".js", ".mjs"],
// Setting this to false will disable the cache.
cache: false,
});
以下是我从翻译中得到的错误消息(我不确定是因为正则表达式):
/home/Development/test-openlayers/node_modules/@babel/runtime/helpers/typeof.js:8
if (typeof Symbol === "function" && (0, _typeof4.default)(Symbol.iterator) === "symbol") {
^
TypeError: (0 , _typeof4.default) is not a function
at _typeof2 (/home/alessandro/Development/test-openlayers/node_modules/@babel/runtime/helpers/typeof.js:1:62)
at _typeof2 (/home/alessandro/Development/test-openlayers/node_modules/@babel/runtime/helpers/typeof.js:4:39)
at Object.<anonymous> (/home/alessandro/Development/test-openlayers/node_modules/lodash.sortby/index.js:95:18)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/whatwg-url/lib/URLSearchParams-impl.js:2:22)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/whatwg-url/lib/URLSearchParams.js:432:14)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/whatwg-url/lib/URL-impl.js:4:25)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/whatwg-url/lib/URL.js:335:14)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/whatwg-url/lib/public-api.js:3:15)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/node_modules/jsdom/lib/api.js:7:19)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.require (/home/alessandro/Development/test-openlayers/setup.js:1:19)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Module._compile (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:83:24)
at Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Object.newLoader [as .js] (/home/alessandro/Development/test-openlayers/node_modules/pirates/lib/index.js:88:7)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at requires.forEach.mod (/home/alessandro/Development/test-openlayers/node_modules/mocha/bin/_mocha:511:3)
at Array.forEach (<anonymous>)
at Object.<anonymous> (/home/alessandro/Development/test-openlayers/node_modules/mocha/bin/_mocha:510:10)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
at startup (internal/bootstrap/node.js:285:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)