// tsconfig.json
{
"compilerOptions": {
"target": "es5",
"lib": ["dom","esnext"],
// "module": "commonjs",
"module": "esNext",
"allowJs": true,
"skipLibCheck": true,
"esModuleInterop": true,
"moduleResolution": "node"
}
}
//webpack.config.ts
import merge from 'webpack-merge'
import base from './webpack.base'
import webpack from 'webpack';
// ...
При конфигурации выше, когда я запускаю npm run build
, выдает ошибку:
(function (exports, require, module, __filename, __dirname) { import merge from 'webpack-merge';
SyntaxError: Cannot use import statement outside a module`
Я нашел решение, которое я должен использовать "module": "commonjs"
, это, без сомнения, веб-пакет работает в среде узла.
В то время как для динамического c импорта веб-пакета требуется "module": "esNext"
в tsconfig.json
, а если я использую конфигурацию "module": "commonjs"
, веб-пакет с webpackChunkName
не работает.
Мой динамический c -импортный код такой же, как и конфигурация в babel.
const starsDance = () => import(/* webpackChunkName: "starsDance" */'./game-stars-dance')
Я не могу найти окончательное решение с помощью многих Google, как я могу это сделать? И большое спасибо за помощь.