当使用requirejs
时,我这样做:
require.config({
baseUrl: "scripts"
});
console.log("Starting!");
require(["A", "B", "C"], mainFunction);
我在谷歌上搜索如何设置 Webpack 的基本路径。我发现resolve.root
。但这是行不通的:
$ node run_with_node.js
D:\node_modules\webpack\lib\webpack.js:19
throw new WebpackOptionsValidationError(webpackOptionsValidationErrors);
^
WebpackOptionsValidationError: Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema.
- configuration.resolve has an unknown property 'root'. These properties are valid:
object { alias?, aliasFields?, cachePredicate?, descriptionFiles?, enforceExtension?, enforceModuleExtension?, extensions?, fileSystem?, mainFields?, mainFiles?, moduleExtensions?, modules?, plugins?, resolver?, symlinks?, unsafeCache?, useSyncFileSystemCalls? }
at webpack (D:\node_modules\webpack\lib\webpack.js:19:9)
at Object.<anonymous> (D:\web\voxnap\run_with_node.js:9:18)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.runMain (module.js:605:10)
at run (bootstrap_node.js:425:7)
at startup (bootstrap_node.js:146:9)
我还尝试使用 resolve.modules
,但如果我这样做,Webpack 无法从 babeljs 找到内部模块。
Error: Cannot find module "babel-runtime/helpers/typeof"
那么如何正确添加包含我的脚本的目录?
最佳答案
您已经查看了 webpack 1 的文档。Webpack 2 删除了 resolve.root
并将其统一为 resolve.modules
,如Migration Guide所示官方 webpack 2+ 文档。
resolve.modules
的默认值为["node_modules"]
,如果您想保持常规模块解析,则还必须包含它。
resolve: {
modules: [
path.resolve(__dirname, "scripts"),
"node_modules"
]
}
关于javascript - 为我的 webpack 文件设置基本路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45400608/