首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将gulpfile.js文件内容迁移到MIX.JS文件

如何将gulpfile.js文件内容迁移到MIX.JS文件
EN

Stack Overflow用户
提问于 2019-05-25 17:58:31
回答 1查看 292关注 0票数 0

我在网上买了一个主题,并用它得到了一个gulpfile,而我正在使用webpack-mix文件。我试了几件事,但都解决不了。

有没有人能告诉我该去哪里找或者怎么解决。

谢谢!

Gulpfile.js

代码语言:javascript
复制
// Define variables
var layout = 'layout_1',        // 'layout_1', 'layout_2', 'layout_3', 'layout_4', 'layout_5'
    theme = 'default',          // 'default' or 'material'
    direction = 'LTR',          // 'LTR' or 'RTL'
    type = 'full',              // 'full' or 'seed'
    iconset = 'icomoon';        // 'icomoon' (default), 'fontawesome', 'material'

// Define plugins
var gulp = require('gulp'),
    postcss = require('gulp-postcss'),
    jshint = require('gulp-jshint'),
    sass = require('gulp-sass'),
    minifyCss = require('gulp-clean-css'),
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    rename = require('gulp-rename'),
    rtlcss = require('gulp-rtlcss');


// Lint
gulp.task('lint', function() {
    return gulp
        .src(layout + '/' + direction + '/' + theme + '/' + type + '/assets/js/*.js')
        .pipe(jshint())
        .pipe(jshint.reporter('default'));
});


//
// SCSS compilation
//

    gulp.task('sass', function() {
        return gulp
            .src('global_assets/scss/layouts/' + layout + '/' + theme + '/compile/*.scss')
            .pipe(sass())
            .pipe(postcss(processors))
            .pipe(gulp.dest(layout + '/' + direction + '/' + theme + '/' + type + '/assets/css'))
            .pipe(minifyCss({
                level: {1: {specialComments: 0}}
            }))
            .pipe(rename({
                suffix: ".min"
            }))
            .pipe(gulp.dest(layout + '/' + direction + '/' + theme + '/' + type + '/assets/css'));
    });

// Listen for changes in all SCSS files and automatically re-compile
gulp.task('watch', function() {
    gulp.watch('global_assets/scss/**/*.scss', ['sass']);
});

webpack.mix.js

代码语言:javascript
复制
mix.js('resources/js/app.js', 'public/js')
    .sass('resources/sass/app.scss', 'public/css');

我只需要基本的功能迁移。

有没有人能帮我把这个file文件迁移到webpack.mix.js文件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-25 20:33:55

我的解决方案

代码语言:javascript
复制
const mix = require('laravel-mix'),
   postcss = require('postcss-custom-properties');

/*
 |--------------------------------------------------------------------------
 | 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.
 |
 */

var layout = 'admin',
   theme = 'material',
   iconset = 'icomoon';

mix.react('resources/assets/js/app.js', 'public/js')
   .sass('resources/assets/scss/front.scss', 'public/css/front.css')

mix.sass('resources/assets/scss/admin.scss', 'public/css/admin.css')
   .options({
   autoprefixer: {
      options: {
         browsers: [
            '>= 1%',
            'last 1 major version',
            'Chrome >= 45',
            'Firefox >= 38',
            'Edge >= 12',
            'Explorer >= 10',
            'iOS >= 9',
            'Safari >= 9',
            'Android >= 4.4',
            'Opera >= 30'
         ],
         map: false
      }
   },
   postCss: [postcss],
   purifyCss: true
});

mix.sass('resources/assets/scss/shared/icons/' + iconset + '/compile/styles.scss', 'public/css/' + layout + '/icons/' + iconset)

mix.disableNotifications();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56303767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档