美文网首页
初识Vue Loader 笔记

初识Vue Loader 笔记

作者: 鸢尾嵌宇 | 来源:发表于2019-11-07 09:59 被阅读0次

    1. 是什么

    是一个 webpack 的 loader

    2. 安装

    方法两种:

    • vue-cli 直接创建
    • 手动创建
      1、初始化webpack
      2、安装vue
      注意:每个 vue 包的新版本发布时,一个相应版本的 vue-template-compiler 也会随之发布。编译器的版本必须和基本的 vue 包保持同步,这样 vue-loader 就会生成兼容运行时的代码。这意味着你每次升级项目中的 vue 包时,也应该匹配升级 vue-template-compiler。
      (1)、安装插件
    yarn add vue
    yarn add vue-loader vue-template-compiler -D
    

    (2)配置webpack.config.js 文件

    const VueLoaderPlugin = require('vue-loader/lib/plugin')
    
    module.exports = {
      module: {
        rules: [
          // ... 其它规则
          {
            test: /\.vue$/,
            loader: 'vue-loader'
          }
        ]
      },
      plugins: [
        // 请确保引入这个插件!
        new VueLoaderPlugin()
      ]
    }
    

    (3)可以同时安装 babel-loader、 css-loader 等资源管理插件,保证对js,css,less等类型文件的处理。参考:

    3. 预处理器的使用

    (1)ts引入
    babel 、typescript

    yarn add babel-loader  ts-loader typescript -D
    
    // webpack.*.js 添加
    resolve: {
            extensions: ['.js', '.ts', '.tsx', '.vue'],
     },
    
    module: {
            rules: [
               {
                    test: /\.([jt])s(x?)$/,
                    use: [{
                        loader: 'babel-loader',
                    },
                        {
                            loader: 'ts-loader',
                            options: {
                                appendTsSuffixTo: [/\.vue$/],
                                transpileOnly: true,
                                onlyCompileBundledFiles: true,
                           },
                       },
                   ],
                   exclude: /node_modules/,
               },
    ]}
    

    (2)样式
    less、css

    yarn add css-loader less less-loader style-loader less-plugin-functions -D
    
    module: {
        rules: [{
            test: /\.less|.css$/,
            use: [
                'vue-style-loader',
                {
                    loader: 'style-loader',
                },
                {
                    loader: 'css-loader', // translates CSS into CommonJS
                },
                        {
                            loader: 'less-loader', // compiles Less to CSS
                            options: {
                                // modifyVars, //  chang
                                javascriptEnabled: true,
                                plugins: [
                                    new LessFunction(),
                                ],
                            },
                        },
            ],
        }]
    }
    

    等等。。。见官网或者各个第三方的官网吧

    4. Scoped CSS

    1、规则:只作用本文件的样式,不包含内部封装的子组件,但是能作用子组件的根元素。
    2、深度作用选择器(能够作用到子组件): >>>。
    像 Sass 之类的预处理器无法正确解析 >>>。这种情况下你可以使用 /deep/ 或 ::v-deep 操作符取而代之——两者都是 >>> 的别名,同样可以正常工作。
    3、通过 v-html 创建的 DOM 内容不受 scoped 样式影响,但是你仍然可以通过深度作用选择器来为他们设置样式。
    4、注意: 尽量不要作用标签样式;在递归组件中小心使用后代选择器!

    5.热重载

    组件的所有实例将在不刷新页面的情况下被替换

    6. 函数式组件

    。。。后面的见官网

    3. 教程中出现的第三方框架插件

    1、<style> 的部分使用 Sass
    2、在 <template> 的部分使用 Pug

    相关文章

      网友评论

          本文标题:初识Vue Loader 笔记

          本文链接:https://www.haomeiwen.com/subject/nxzsvctx.html