Jam*_*ods 3 laravel webpack laravel-mix
我正在使用 nwidart 的 laravel 模块为 laravel 应用程序创建单独的模块,每个模块都包含该模块的代码。目前我正在尝试将与每个模块相关的css文件放入单独的app.scss中,然后使用webpack将.scss移动到公共目录中。
我设法通过为每个模块包含单独的 webpack.mix 文件来实现此目的,将 css 移动到主公共目录。npm run dev然而,我的问题是,为了实现这一点,每次我想更新 css 时,我都必须在每个模块文件夹的根目录中运行该命令。有没有更简单的方法来运行应用程序中的所有模块 webpack.mix.js 文件,还是我每次都必须手动执行?
这是我正在使用的模块包https://github.com/nWidart/laravel-modules
这也是目录外观的示例
- 应用程序
----模块
------博客-> webpack.mix.js
- - - - 资源
- - - - - -资产
-------------Sass -> app.scss
这里还有博客模块的 webpack.mix.js 副本
const { mix } = require('laravel-mix');
require('laravel-mix-merge-manifest');
mix.setPublicPath('../../public').mergeManifest();
mix.sass( __dirname + '/Resources/assets/sass/app.scss', 'css/blog.css');
if (mix.inProduction()) {
mix.version();
}
Run Code Online (Sandbox Code Playgroud)
我在使用 nwidart 模块时遇到了这个问题。要解决这个问题,请在主 weppack.mix.js 中编写以下代码:
const mix = require('laravel-mix');
const fs = require('fs');
const path = require('path');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css');
const moduleFolder = './Modules';
const dirs = p => fs.readdirSync(p).filter(f => fs.statSync(path.resolve(p,f)).isDirectory())
let modules = dirs(moduleFolder);
cssArray = [];
cssArray.push('public/css/app.css');
modules.forEach(function(m){
let js = path.resolve(moduleFolder,m,'Resources','assets','js', 'app.js');
mix.js(js,'public/js');
let scss = path.resolve(moduleFolder,m,'Resources','assets','sass', 'app.scss');
mix.sass(scss,'public/css/'+m+'.css');
cssArray.push('public/css/'+m+'.css');
});
mix.styles(cssArray, 'public/css/all.css');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3811 次 |
| 最近记录: |