【发布时间】:2018-09-22 21:42:09
【问题描述】:
我正在尝试捆绑 moment.js,但捆绑后它一直返回 undefined:
我的网页包
var path = require("path");
var webpack = require("webpack");
module.exports = {
mode: "development",
entry: {
frb: "./src/app/loader.js"
},
output: {
path: path.resolve(__dirname, "./src/lib"),
filename: "bundle.js"
},
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /(node_modules)/,
loader: "babel-loader",
query: {
presets: [
[
"@babel/preset-env",
{
targets: {
chrome: "58",
ie: "9"
}
}
]
]
}
}
]
},
plugins: [
// Ignore all locale files of moment.js
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
new webpack.ProvidePlugin({
moment: "moment"
})
]
};
我的 loader.js 只是包含:
require("moment")
【问题讨论】:
-
你看过this thread吗?
-
我试过了,但没有解决问题。
-
你为什么在
loader.js中使用require("moment"),同时又使用webpack.IgnorePlugin和webpack.ProvidePlugin?这一切似乎都是矛盾的。尝试删除这两个插件并在您的代码中简单地执行const moment = require("moment")? -
因为我不知道自己在做什么,说明也很少。
标签: javascript webpack momentjs bundle