vue2下main.js中引入less/scss报错,只能引入css文件。解决:直接在build下的utils.js中引入所有的样式文件_vue 引入网络css、js、less-程序员宅基地

'use strict'
const path = require('path')
const config = require('../config')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const packageConfig = require('../package.json')

//处理样式路径
exports.assetsPath = function (_path) {
  const assetsSubDirectory = process.env.NODE_ENV === 'production'
    ? config.build.assetsSubDirectory
    : config.dev.assetsSubDirectory
  return path.posix.join(assetsSubDirectory, _path)
}

 //引入全局样式
let  resourcesConfig = [
  path.resolve(__dirname, '../src/assets/style/globle.scss'),
]

//处理样式编译
exports.cssLoaders = function (options) {
  options = options || {}
  const cssLoader = {
    loader: 'css-loader',
    options: {
      sourceMap: options.sourceMap//出错之后是否显示详细的位置信息
    }
  }

  const postcssLoader = {
    loader: 'postcss-loader',
    options: {
      sourceMap: options.sourceMap
    }
  }

  
  //加载对应的loader
  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是自定义的属性,可以定义在options里面,主要作用就是当配置为true就把文件单独取,false表示不能提取
    if (options.extract) {
      return ExtractTextPlugin.extract({
        use: loaders,
        fallback: 'vue-style-loader'
      })
    } else {
      return ['vue-style-loader'].concat(loaders)
    }
  }

  return {
    css: generateLoaders(), // css对应 vue-style-loader 和 css-loader
    postcss: generateLoaders(), // postcss对应 vue-style-loader 和 css-loader
    less: generateLoaders('less'), // less对应 vue-style-loader 和 less-loader
    sass: generateLoaders('sass', { indentedSyntax: true }), // sass对应 vue-style-loader 和 sass-loader
    // scss: generateLoaders('sass').concat(
    //   {//引入单个样式文件
    //     loader:'sass-resources-loader',
    //     options:{
    //       resources:path.resolve(__dirname,'../src/assets/style/globle.scss')
    //     }
    //   }
    // ), // scss对应 vue-style-loader 和 sass-loader
    stylus: generateLoaders('stylus'), // stylus对应 vue-style-loader 和 stylus-loader
    styl: generateLoaders('stylus'), // styl对应 vue-style-loader 和 styl-loader
    //scss文件类型
    scss: generateLoaders('sass').concat({
      loader: 'sass-resources-loader',
      options: {
        resources: resourcesConfig//引入多个sass文件,以数组的形式
      }}),
     //less文件类型
    // less: generateLoaders('less').concat({
    //   loader: 'sass-resources-loader',
    //   options: {//引入多个less文件,以数组的形式
    //     resources: resourcesConfig
    //   }}),
  }
}

// Generate loaders for standalone style files (outside of .vue)
exports.styleLoaders = function (options) {
  const output = []
  const loaders = exports.cssLoaders(options)
  for (const extension in loaders) {
    const loader = loaders[extension]
    output.push({
      test: new RegExp('\\.' + extension + '$'),
      use: loader
    })
  }
  return output
}

exports.createNotifierCallback = () => {
  const notifier = require('node-notifier')
  return (severity, errors) => {
    if (severity !== 'error') return
    const error = errors[0]
    const filename = error.file && error.file.split('!').pop()

    notifier.notify({
      title: packageConfig.name,
      message: severity + ': ' + error.name,
      subtitle: filename || '',
      icon: path.join(__dirname, 'logo.png')
    })
  }
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43563070/article/details/107464320

智能推荐

CUDA中的NVCC编译器详解-程序员宅基地

文章浏览阅读1.7w次,点赞2次,收藏15次。NVCC编译器详解CUDA C++ 为熟悉 C++ 编程语言的用户提供了一种简单的途径,可以轻松编写由设备执行的程序。它由c++语言的最小扩展集和运行时库组成。编程模型中引入了核心语言扩展。它们允许程序员将内核定义为 C++ 函数,并在每次调用函数时使用一些新语法来指定网格和块的维度。所有扩展的完整描述可以在 C++ 语言扩展中找到。任何包含这些扩展名的源文件都必须使用 nvcc 进行编译,如使用NVCC编译中所述。运行时在 CUDA Runtime 中引入。它提供了在主机上执行的 C 和 C++ _nvcc编译

学习笔记第三十九节:快速沃尔什变换(FWT)-程序员宅基地

文章浏览阅读425次。正题 我们学会了快速傅立叶变换,狄利克雷卷积,现在我们来解决一下快速沃尔什变换。 它主要是解决这样的问题的:。 也就是说 其中那个你看不懂的符号指的是三则运算的其中一种:or,and,xor。 怎么做? 我们来模仿一下解决多项式乘法的过程,我们先是把原数组做一次傅立叶变换,然后再相乘,最后再做一次逆变换。 ..._沃尔什变换

python pip安装提示Consider using the `--user` option or check the permissions._consider using the user option-程序员宅基地

文章浏览阅读1.8w次,点赞3次,收藏4次。python 通过pip安装程序包的时候提示Consider using the `--user` option or check the permissions.原因不明,解决方法:1、通过pip installpandas --user 安装2、通过pip installpandas --user pandas安装..._consider using the user option

使用VS 2019创建ACLLIB程序及遇到的问题解决方法_acllib显示不了图像-程序员宅基地

文章浏览阅读2.6k次,点赞15次,收藏16次。创建Win32项目“创建新项目”——选择“Windows桌面向导”——“下一步”——填写项目名称及位置——“创建”——选择“控制台应用程序”,勾选“空项目”——“确定”添加文件进入项目文件夹,将 acllib.h和acllib.c复制到该目录中注意文件夹的位置。代码应该放在“目录项目名称 / 项目名称”文件夹中右击"源文件"——“添加”——“添加现有项”——添加acllib.h和acllib.c右击“源文件"——“添加”——“添加新建项”——新建“c++文件”——命名后缀改为.c在_acllib显示不了图像

模型参数优化(三):模拟退火_optimize live editor task gatbx.-程序员宅基地

文章浏览阅读1.6k次。1. 基本概念 补充。。。2. 实现步骤3. 代码实现_optimize live editor task gatbx.

zookeeper创建子节点报NoChildrenForEphemeralsException问题_no_children_for_ephemerals: exception: no_children-程序员宅基地

文章浏览阅读7k次。用ZOOKEEPER客户端向zookeeper的某一个节点添加子节点时出现以下错误:org.apache.zookeeper.KeeperException$NoChildrenForEphemeralsException: KeeperErrorCode = NoChildrenForEphemerals for /xxxxx/xxxx/at org.apache.zookeeper.K_no_children_for_ephemerals: exception: no_children_for_ephemerals

随便推点

sql学习笔记(一)_show create table-程序员宅基地

文章浏览阅读156次。电脑系统:macOS软件:mysql 8.0.231、登录数据库命令/usr/local/MySQL/bin/mysql -u root -p_show create table

LAVA-M数据集的使用-程序员宅基地

文章浏览阅读723次,点赞3次,收藏3次。LAVA-M数据集的使用_lava-m

静态HTML网页模板源码——仿男装女装购物商城(40页功能齐全)_html静态商城源代码-程序员宅基地

文章浏览阅读117次。精彩专栏推荐 【作者主页——获取更多优质源码】 【web前端期末大作业——毕设项目精品实战案例(1000套)】1 网页简介:此作品为学生个人主页网页设计题材,HTML+CSS 布局制作,web前端期末大作业,大学生网页设计作业源码,这是一个不错的网页制作,画面精明,代码为简单学生水平, 非常适合初学者学习使用。2.网页编辑:网页作品代码简单,可使用任意HTML编辑软件(如:Dreamweaver、HBuilder、Vscode 、Sublime 、Web_html静态商城源代码

GEE入门篇|图像分类(一):监督分类_gee分类-程序员宅基地

文章浏览阅读1.8k次,点赞31次,收藏28次。GEE入门篇|图像分类(一):监督分类_gee分类

iOS中的URL Scheme_苹果计算器url scheme-程序员宅基地

文章浏览阅读857次。iOS中的URL Scheme 在iOS的SDK中提供了一个非常有意思的功能,它能将iOS的Application同自定义的URL Schema绑定,同时可以通过URL Scheme在浏览器或者是其他应用中启动这个Application。本文主要介绍如何通过URL Scheme的方式启动应用和参数的传递。 对应的源码配置文件为:CFBundleURLTypes_苹果计算器url scheme

Android腾讯直播SDK接入问题解决方案-程序员宅基地

文章浏览阅读335次。下载好Demo解压。1.是按照aar的集成方式。1.1导入aar包到libs里面1.2 add的gradle添加defaultConfig{ndk{abiFilters 'armeabi-v7a', 'armeabi'}}dependencies添加:/腾讯直播compile(name: 'LiteAVSDK_Professional_5.3.6004', ext: 'aar')1.3项目的gra..._android 腾讯直播达到试用版限制liteavsdk_trtc dau reaches the trial edition l