zoukankan      html  css  js  c++  java
  • 如何在vue中全局引入stylus文件的公共变量

    新建 一个公共的stylus公共文件添加公共变量,如下:

    修改下图圈出的文件:

    具体的修改如下:

    // generate loader string to be used with extract text plugin
      function generateLoaders (loader, loaderOptions) {
        const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
    
        if (loader) {
          loaders.push({
            loader: loader + '-loader',
            options: Object.assign({}, loaderOptions, {
              sourceMap: options.sourceMap
            })
          })
        }
    
        // Extract CSS when that option is specified
        // (which is the case during production build)
        if (options.extract) {
          return ExtractTextPlugin.extract({
            use: loaders,
            fallback: 'vue-style-loader',
          })
        } else {
          return ['vue-style-loader'].concat(loaders)
        }
      }
       var stylusOptions = {
            import: [
                path.join(__dirname, "../src/assets/css/public/var.styl"), // 全局变量文件 文件后缀名为.styl
            ]
        }
    // https://vue-loader.vuejs.org/en/configurations/extract-css.html
      return {
        css: generateLoaders(),
        postcss: generateLoaders(),
        less: generateLoaders('less'),
        sass: generateLoaders('sass', { indentedSyntax: true }),
        scss: generateLoaders('sass'),
        stylus: generateLoaders('stylus',stylusOptions),
        styl: generateLoaders('stylus',stylusOptions)
      }

     这里要特别注意文件后缀名是.styl而不是.stylus哦!

    然后就可以在.stylus或者.styl文件(两种后缀名都是可以的,统一就好)里面使用var.styl里面定义的变量了:

     最后重启刷新就可以看到效果啦

  • 相关阅读:
    cmd git常用命令使用
    vue2.0 vue-qr生成二维码
    全局css设置
    input 输入框 json格式展示
    eslint 常用配置及说明
    es6中promise 使用总结
    vue 自定义全局组件
    vue element 表头添加斜线
    indexedDB 使用
    黑客攻防从入门到精通(攻防与脚本编程篇)
  • 原文地址:https://www.cnblogs.com/stella1024/p/10000170.html
Copyright © 2011-2022 走看看