Как использовать узловые модули в файле ресурсов Laravel5.2
На этот раз я пытаюсь использовать пакет npm web3 в проекте laravel 5.2. Я совершенно новый, используя npm, и это тоже внутри Laravel.
Пока что в моем файле package.json есть следующие вещи:
{
"private": true,
"devDependencies": {
"gulp": "^3.9.1"
},
"dependencies": {
"bootstrap-sass": "^3.0.0",
"laravel-elixir": "^2.0.0",
"web3": "^1.0.0-beta.36"
}
}
Когда я делаю npm install
все зависимости узла установлены в node_modules
внутри корневого каталога. Сейчас я пытаюсь выяснить, как эти пакеты можно купить в использовании внутри public/assets/js/app.js
файл.
Нужно ли также запускать службы узлов для использования этих пакетов?
Версия npm: 6.4.1
версия узла: v8.11.4
Ваша помощь очень ценится.
Обновленный вопрос - 10 сентября 2018 г.
Понизил пакет моего узла до 6.0, чтобы преодолеть несколько проблем с 8.0, с которыми я столкнулся.
версия узла: v6.0.0
Версия npm: 3.8.6
Новый пакет.json:
{
"private": true,
"scripts": {
"prod": "gulp --production",
"dev": "gulp watch"
},
"devDependencies": {
"@types/node": "^10.9.4",
"gulp": "^3.9.1",
"laravel-elixir-rollup": "^0.3.3",
"laravel-elixir-webpack": "^1.0.1",
"require-dir": "^0.3.2"
},
"dependencies": {
"bootstrap-sass": "^3.0.0",
"laravel-elixir": "^5.0.0",
"web3": "^1.0.0-beta.36"
}
}
Новый gulpfile.json:
var elixir = require('laravel-elixir');
var path = require('path');
require('laravel-elixir-webpack');
elixir(function(mix) {
mix.webpack(
'./node_modules/web3/src/index.js',
'./public/js/web3-compiled.js'
);
});
Когда я бегу npm run dev
в консоли, он останавливается заканчивается, как показано ниже -
[digvijay@Digvijays-MacBook-Air:/var/www/html/estatebaron$ npm run dev
> @ dev /private/var/www/html/estatebaron
> gulp watch
node_modules/nan
[17:10:07] Using gulpfile /private/var/www/html/estatebaron/gulpfile.js
[17:10:07] Starting 'watch'...
[17:10:07] Finished 'watch' after 18 ms
То, что я ожидаю здесь, это имя файла JS web3-compiled.js
создано в public/js
каталог, но этого не происходит сейчас. Я что-то здесь упускаю?
1 ответ
Если вы используете конфигурацию laravel 5.2 по умолчанию, вам, вероятно, не хватает некоторых строк в package.json
видеть это
Чтобы заставить его работать npm run dev
, но убедитесь, что правильно настроили gulpfile.js
, Подробнее об этом читайте в https://laravel.com/docs/5.3/elixir и https://github.com/gulpjs/gulp/tree/v3.9.1/docs