Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网页包1:resolve.alias不将一个npm模块别名为另一个_Javascript_Node.js_Webpack - Fatal编程技术网

Javascript 网页包1:resolve.alias不将一个npm模块别名为另一个

Javascript 网页包1:resolve.alias不将一个npm模块别名为另一个,javascript,node.js,webpack,Javascript,Node.js,Webpack,我有一个用于为同构React应用程序创建服务器包的webpack配置。在该配置中,我试图使用resolve.alias将一个模块(parse)别名为另一个模块(parse/node)。webpack文档中的aboutresolve.alias,看起来这应该是可能的。这就是我的alias对象的外观: alias: { parse: 'parse/node', pubnub: 'static/deps/pubnub/pubnub-3.13.0.min.js' } 我已经在为模块pu

我有一个用于为同构React应用程序创建服务器包的webpack配置。在该配置中,我试图使用
resolve.alias
将一个模块(
parse
)别名为另一个模块(
parse/node
)。webpack文档中的about
resolve.alias
,看起来这应该是可能的。这就是我的alias对象的外观:

alias: {
    parse: 'parse/node',
    pubnub: 'static/deps/pubnub/pubnub-3.13.0.min.js'
}
我已经在为模块
pubnub
使用别名,并且该别名可以在预定的时间工作。不幸的是,我对parse键所做的任何操作似乎都不会改变我的webpack builded
bundle.js

/***/ function(module, exports) {
    module.exports = require("parse");
/***/ },
我正在尝试解析为
/node\u modules/parse/node.js
。使用绝对/相对路径似乎不起作用,也没有在末尾添加
.js
扩展。在这一点上,我不知道这是一个网页错误还是我忽略了什么。任何帮助都将不胜感激!以下是我的完整网页配置的要点链接:


问题在于网页包配置中的以下行:

...,
externals: [nodeExternals({
    whitelist: ['webpack/hot/poll?1000']
})],
...,
是一个网页包插件,用于自动将
node\u modules
中的模块列入黑名单。在为后端构建时,通常不需要将npm模块与最终捆绑包捆绑在一起,因为npm模块安装在系统上。此黑名单还阻止webpack对任何npm模块进行任何别名处理。像这样更改
白名单
数组解决了我的问题:

...,
externals: [nodeExternals({
    whitelist: ['webpack/hot/poll?1000', 'parse']
})],
...,
这个故事的寓意是:在不完全理解样板文件的功能的情况下,不要复制样板文件中的代码。如果我只是简单地阅读我正在使用的网页插件的
README.md
,我就可以省去几天的头痛

...,
externals: [nodeExternals({
    whitelist: ['webpack/hot/poll?1000', 'parse']
})],
...,