const mix = require('laravel-mix'); /* |-------------------------------------------------------------------------- | 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. | */ if (mix.inProduction()) { mix.options({ terser: { terserOptions: { warnings: true, // sourceMap: true, compress: { warnings: false, drop_console: true } } } }); } mix.options({processCssUrls: false}); // enable source maps
| file for the application as well as bundling up all the JS files. | */ mix.setPublicPath('public'); mix.sass('resources/sass/frontend/app.scss', 'css/frontend.css') .sass('resources/sass/backend/app.scss', 'css/backend.css') .js('resources/js/frontend/app.js', 'js/frontend.js') .js([ 'resources/js/backend/before.js', 'resources/js/backend/app.js', 'resources/js/backend/after.js' ], 'js/backend.js') .extract([ 'jquery', 'bootstrap', 'popper.js/dist/umd/popper', 'axios', 'sweetalert2', 'lodash', '@fortawesome/fontawesome-svg-core', '@fortawesome/free-brands-svg-icons', '@fortawesome/free-regular-svg-icons', '@fortawesome/free-solid-svg-icons' ]); if (mix.inProduction() || process.env.npm_lifecycle_event !== 'hot') { mix.version(); }
mix.options({ extractVueStyles: true, globalVueStyles: `./front-end/sass/globals.sass`, // uglify: { // uglifyOptions: { // compress: { // drop_console: mix.inProduction(), // }, // }, // }, }); mix.copy('front-end/static/', 'dashboard/'); if (!mix.inProduction()) { mix.webpackConfig({ devtool: `inline-source-map` }); const Config = require('./back-end/config/Config'); mix.browserSync({ proxy: `localhost:${Config.getServerPort()}`, injectChanges: false, files: [`dashboard/**/*`], }); mix.disableSuccessNotifications(); } mix.version(); mix.setPublicPath(`dashboard/`);
let 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.setPublicPath(path.join('public', 'assets')); mix.setResourceRoot('/assets/'); mix.sourceMaps(! mix.inProduction()); mix.disableNotifications(); if (mix.config.hmr === true) { mix.setResourceRoot('/'); } /* |-------------------------------------------------------------------------- | Bootstrap SASS & jQuery bundle. |-------------------------------------------------------------------------- | | 包含 jQuery 和 Bootstrap 的捆包。 | */
_asset + 'js/plugins/bootstrap/scrollspy.js', _asset + 'js/plugins/bootstrap/tab.js', _asset + 'js/plugins/bootstrap/affix.js', _asset + 'js/_main.js' ], 'js/main.min.js') .scripts(_asset + 'js/modernizr.custom.js', 'dist/js/modernizr.js') .less(_asset + 'less/app.less', 'dist/css/main.min.css') .options({ processCssUrls: false }) .styles([ _asset + 'fonts/fontello/css/fontello.css', _asset + 'fonts/proximanova/proximanova.css', _asset + 'css/GentiumBookBasic.css' ], 'dist/css/fonts.css') .styles(_asset + 'fonts/fontello/css/fontello-ie7.css', 'dist/css/fontello-ie7.css') .styles(_asset + 'css/jquery-ui.min.css', 'dist/css/jquery-ui.min.css') .styles(_asset + 'css/ie7.css', 'dist/css/ie7.css') .styles(_asset + 'css/ie7and8.css', 'dist/css/ie7and8.css') .styles(_asset + 'css/old-ie.css', 'dist/css/old-ie.css') .copy(_asset + 'img/*', 'dist/img/') .copy(_asset + 'fonts/fontello/font/*', 'dist/font/') .copy(_asset + 'fonts/proximanova/font/*', 'dist/css/'); if (mix_.inProduction()) { mix_.version(); } else { mix_.sourceMaps(); }