Webpack 未正确捆绑 node_modules 中的 .json 文件
Webpack not bundling .json file in node_modules properly
我目前正在构建一个电子应用程序,以部署在带有反应前端的树莓派 3 上。它使用 webpack 来捆绑一切。我也在尝试使用 node-raspicam 包与相机模块进行交互。我已经成功地能够在此应用程序之外单独使用 node-raspbicam 包。但是当我尝试在此应用程序中导入它时,出现以下错误
Module not found: Error: Cannot resolve 'file' or 'directory' ../options in /usr/src/app/node_modules/raspicam/lib
@ ./~/raspicam/lib/raspicam.js 7:17-38 8:12-33
在 raspicam.js 它试图做 parameters = require("../options").parameters
这是它失败的地方。
在 node_modules options.json 内的 raspicam 树中存在一个目录,从它被调用的地方开始。
我的想法是 webpack 没有正确捆绑这个 json 文件,因此找不到它。
我的 webpack 加载器:
module: {
loaders: [{
test: /\.jsx?$/,
loaders: ['babel-loader'],
exclude: /node_modules/
},
{
test: /\.(jpg|png)$/,
loader: 'file?name=[path][name].[hash].[ext]',
include: path.images
},
{
test: /\.json$/,
loader: 'json-loader'
}]
},
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
libraryTarget: 'commonjs2'
},
resolve: {
extensions: ['', '.js', '.jsx'],
packageMains: ['webpack', 'browser', 'web', 'browserify', ['jam', 'main'], 'main']
},
plugins: [
],
externals: [
// put your node 3rd party libraries which can't be built with webpack here
// (mysql, mongodb, and so on..)
]
我对 webpack 还是很陌生。我缺少什么,以便正确捆绑 raspicam node_module 中的 options.json 文件?
尝试将 .json
添加到配置文件中 resolve
对象中的 extensions
。它可能会起作用。
我目前正在构建一个电子应用程序,以部署在带有反应前端的树莓派 3 上。它使用 webpack 来捆绑一切。我也在尝试使用 node-raspicam 包与相机模块进行交互。我已经成功地能够在此应用程序之外单独使用 node-raspbicam 包。但是当我尝试在此应用程序中导入它时,出现以下错误
Module not found: Error: Cannot resolve 'file' or 'directory' ../options in /usr/src/app/node_modules/raspicam/lib
@ ./~/raspicam/lib/raspicam.js 7:17-38 8:12-33
在 raspicam.js 它试图做 parameters = require("../options").parameters
这是它失败的地方。
在 node_modules options.json 内的 raspicam 树中存在一个目录,从它被调用的地方开始。
我的想法是 webpack 没有正确捆绑这个 json 文件,因此找不到它。
我的 webpack 加载器:
module: {
loaders: [{
test: /\.jsx?$/,
loaders: ['babel-loader'],
exclude: /node_modules/
},
{
test: /\.(jpg|png)$/,
loader: 'file?name=[path][name].[hash].[ext]',
include: path.images
},
{
test: /\.json$/,
loader: 'json-loader'
}]
},
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
libraryTarget: 'commonjs2'
},
resolve: {
extensions: ['', '.js', '.jsx'],
packageMains: ['webpack', 'browser', 'web', 'browserify', ['jam', 'main'], 'main']
},
plugins: [
],
externals: [
// put your node 3rd party libraries which can't be built with webpack here
// (mysql, mongodb, and so on..)
]
我对 webpack 还是很陌生。我缺少什么,以便正确捆绑 raspicam node_module 中的 options.json 文件?
尝试将 .json
添加到配置文件中 resolve
对象中的 extensions
。它可能会起作用。