使用 Laravel Elixir 编译 Gulp 中的资产子目录

Compiling assets subdirectories in Gulp with Laravel Elixir

我正在开发最终会成为一个非常大的应用程序,这意味着我的 asssets/whatever 文件夹可能包含数百个文件(SCSS、js 等)。

显然这会使管理它们变得有些棘手,所以我想将它们安排到我应用程序的每个模块的子文件夹中。

例如我的应用程序的 SAP 部分将其样式和 js 存储如下:

resources/assets/js/SAP/myjs.js resources/assets/sass/SAP/mysass.scss

在 laravel-elixars 配置中,您似乎只能指定一个 assetsDir 路径:

var config = {
    production: !! util.env.production,
    srcDir: 'app',
    assetsDir: 'resources/assets/',
    cssOutput: 'public/css/_raw',
    jsOutput: 'public/js/_raw',
    bowerDir: 'vendor/bower_components',
    tasks: [],
    watchers: { default: {} },
    duplicate: [],
    concatenate: { css: [], js: [] }
};

如果你至少能做到以下几点就好了:

...
assetsDir: ['resources/assets/SAP', 'resources/assets/Diary', ...],
...

或者更好的是,让它根据资产目录中的目录自动映射输出路径。

找到了我的问题的解决方案。

对于它的 css 部分,我可以在 master.scss 文件中使用 SASS 的 @import,它只是 @imports 所有 scss 文件用于各种我的项目的一部分。

我想对于 JS,我会用 requirejs(?) 做一些类似的事情。