Symfony Webpack Encore:从 Bundle 导入 .js

Symfony Webpack Encore : Import .js from Bundle

使用 Symfony,我创建了一个包。此包已在 /vendor 中正确导入。 这个包有两个 public 个文件:

如何使用 Wepack Encore 在我的主项目中导入这些文件?

目前我在做:

assets/js/app.js中:

import "../../vendor/gaylordp/mybundle/Resources/public/js/mybundle.js";

assets/css/app.scss中:

@import "../../vendor/gaylordp/mybundle/Resources/public/css/mybundle.scss";

但我认为这不是理想的解决方案...您有其他想法吗?

您必须在 webpack.config.js 中添加一个条目。

.addEntry('isotop', './vendor.../js/isotop.js')

在终端中执行 yarn run dev 刷新资产后。

告诉我们它是否有效

在我看来你有两个解决方案:

  1. 照@hoover_D 说的去做。在 webpack.config.js.

    中添加两个条目
    // for the js  
    .addEntry('js/mybundle', './vendor/.../mybundle.js')  
    
    // for the scss  
    .addStyleEntry('css/mybundle', './vendor/.../css/mybundle.scss')  
    
  2. 如果多个文件需要你的bundle的js代码,你可以使用createSharedEntry。文档是 here.

    // for the js  
    .createSharedEntry('js/mybundle', './vendor/.../mybundle.js')  
    
    // for the scss  
    .addStyleEntry('css/mybundle', './vendor/.../css/mybundle.scss')