С Symfony я создал пакет.Этот комплект правильно импортирован в /vendor.У этого пакета есть два открытых файла:
/vendor
/MyBundle/Resources/Public/css/mybundle.scss
/MyBundle/Resources/Public/js/mybundle.js
Как импортировать эти файлы в мой основной проект с Wepack Encore?
В настоящее время я делаю:
В assets/js/app.js:
assets/js/app.js
import "../../vendor/gaylordp/mybundle/Resources/public/js/mybundle.js";
In assets/css/app.scss:
assets/css/app.scss
@ import "../../vendor/gaylordp/mybundle/Resources/public/css/mybundle.scss";
Но я думаю, что это не идеальное решение ... у вас есть другая идея?
На мой взгляд, у вас есть два решения:
Делайте так, как говорит @hoover_D.Добавьте две записи в ваш webpack.config.js.
// for the js .addEntry('js/mybundle', './vendor/.../mybundle.js') // for the scss .addStyleEntry('css/mybundle', './vendor/.../css/mybundle.scss')
Если для нескольких файлов требуется код js вашего пакета, вы можете использовать createSharedEntry.Документация здесь .
createSharedEntry
// for the js .createSharedEntry('js/mybundle', './vendor/.../mybundle.js') // for the scss .addStyleEntry('css/mybundle', './vendor/.../css/mybundle.scss')
Вы должны добавить запись в свой webpack.config.js.
webpack.config.js
.addEntry('isotop', './vendor.../js/isotop.js')
после того, как вы выполните yarn run dev в терминале для обновления активов.
yarn run dev
сообщите нам, работает ли он