首页 > 技术文章 > 原生小程序中实现将scss文件实时编译为wxss文件

fooso 2020-12-20 13:41 原文

参考链接

  1. 全局安装gulp,方便以后直接执行gulp命令

    npm install gulp -g

  2. 用原生小程序新建一个项目

  3. 在小程序根目录(app.js同级目录)中新建package.json文件

    npm init -y

  4. 安装gulp和相关插件

    npm install gulp -s

    安装依赖

    npm install gulp-changed gulp-rename gulp-sass gulp-watch

  5. 在根目录创建gulpfile.js文件,代码如下:

    var gulp = require('gulp');
    var sass = require('gulp-sass');
    var rename = require('gulp-rename')
    var changed = require('gulp-changed')
    var watcher = require('gulp-watch')
    
    //自动监听
    gulp.task('default', gulp.series(function() {
      watcher('./pages/**/*.scss', function(){
        miniSass();
      });
    }));
    
    
    //手动编译
    gulp.task('sass', function(){
      miniSass();
    });
    
    
    function miniSass(){
      return gulp.src('./pages/**/*.scss')//需要编译的文件
        .pipe(sass({
        outputStyle: 'expanded'//展开输出方式 expanded 
      }))
        .pipe(rename((path)=> {
        path.extname = '.wxss'
      }))
        .pipe(changed('./pages'))//只编译改动的文件
        .pipe(gulp.dest('./pages'))//编译
        .pipe(rename((path)=> {
        console.log('编译完成文件:' + 'pages\\' + path.dirname + '\\' + path.basename + '.scss')
      }))
    }
    
  6. 在根目录运行gulp进行监听编译

    gulp

  7. 这个时候在page目录下修改保存scss文件就会实时转换为wxss文件啦!

推荐阅读