zoukankan      html  css  js  c++  java
  • webpack to package typescript & scss

    Demo2操作手册

    本Demo演示如何配合各种loader进行稍复杂的使用

    准备环境

    初始化环境, cd到demo目录之后, 执行如下命令:

    npm init -y
    npm install webpack webpack-cli -D
    

    L2 Typescript

    Typescript作为JavaScript的超集收到越来越多的开发者的欢迎. Webpack要打包Typescript需要安装:

    npm install typescript ts-loader -D
    

    新建一个typescript的配置文件tsconfig.json, 内容如下:

    {
      "compilerOptions": {
        "target": "es5"
      }
    }
    

    在src目录下新建index.ts文件, 内容如下:

    class Demo2 {
      Name: string;
      constructor() {
        this.Name = 'Demo2';
      }
      L2() {
        console.log(`I'm demo for ts-loader, come from ${this.Name}`);
      }
    }
    const demo = new Demo2();
    demo.L2();
    

    新建webpack.config.js, 内容如下:

    module.exports = {
      entry: './src/index.ts',
      output: {
        filename: 'output.js'
      },
      module: {
        rules: [
          {
            test: /.ts$/,
            use: 'ts-loader'
          }
        ]
      }
    }
    

    执行webpack命令, 成功打包了typescript.

    L3 Scss

    Scss是Sass3的超集, 其语法完全兼容css3, 并且继承了Sass的强大功能. Webpack打包Scss需要安装:

    npm install node-sass sass-loader css-loader style-loader -D
    

    在src目录新建index.scss, 内容如下:

    $bgColor: bisque;
    body {
      background-color: $bgColor;
      .red {
        background-color: red;
      }
    }
    

    然后修改webpack.config.js内容如下:

    module.exports = {
      entry: './src/index.ts',
      output: {
        filename: 'output.js'
      },
      module: {
        rules: [
          {
            test: /.ts$/,
            use: 'ts-loader'
          }, {
            test: /.scss$/,
            use: [
              {
                loader: 'style-loader' //将JS字符串生成style节点
              }, {
                loader: 'css-loader' //将Css转换为CommonJs模块
              }, {
                loader: 'sass-loader' //将Sass编译成Css
              }
            ]
          }
        ]
      }
    }
    

    需要注意的是, use数组中的loader, 越靠后越先执行, 因此执行顺序是sass->css->style. 执行webpack命令, 成功打包了scss.

  • 相关阅读:
    浅释一下,为什么要使用接口?
    枚举的简单使用
    最富有的人
    拜读websharp时,发现的几处问题(二)
    如何规划职业发展道路如何规划职业发展道路(ZT)
    在.NET环境中使用单元测试工具NUnit(ZT)
    [转贴]不得不知的几个可怕信息!
    ASP.NET中数据导入至Excel
    拜读websharp时,发现的几处问题(一)
    合并DataGrid相同单元格
  • 原文地址:https://www.cnblogs.com/jerryqi/p/11757535.html
Copyright © 2011-2022 走看看