В настоящее время я создаю электронное приложение для развертывания на малине pi3 с реагирующим передним концом. Он использует 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
которые находятся там, где они терпят неудачу. В дереве raspicam внутри node_modules options.json существует одна директория, откуда она вызывается.
Моя мысль, что webpack не связывает этот json файл, поэтому он не может быть найден.
Мои загрузчики веб-пакетов:
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. Что мне не хватает, чтобы файл options.json в raspicam node_module правильно вставлялся?
Попробуйте добавить .json
к extensions
в объекте resolve
в файле конфигурации. Это может сработать.