vue组件库搭建报错问题(vue-loader报错、gulp打包css报错,包含组件库打包文件webpack及gulp)

news2024/12/25 9:34:18

1、vue-loader报错

报错详情
vue-loader 17.0.0运行webpack打包命令时会报错:
在这里插入图片描述

解决方法:
需适配版本:将package.json,vue-loader版本修改为 “vue-loader”: “^15.10.0”,删除本地node_modules文件夹,重新运行即可

2、gulp打包css报错

报错详情

Error in plugin “gulp-sass” Message:

gulp-sass no longer has a default Sass compiler; please set one
yourself. Both the “sass” and “node-sass” packages are permitted. For
example, in your gulpfile:

const sass = require(‘gulp-sass’)(require(‘sass’));

[09:54:33] The following tasks did not complete: sass [09:54:33] Did
you forget to signal async completion?

解决

按报错信息说的将 const sass = require('gulp-sass') 改为

const sass = require('gulp-sass')(require('sass'));

附件文件

package.json

{
  "name": "cbfsp-ui",
  "version": "0.1.0",
  "description": "xxxxUI组件库",
  "main": "dist/index.umd.js",
  "keywords": [
    "xxxx-ui",
    "vue",
    "ui"
  ],
  "author": "qss",
  "files": [
    "dist",
    "components"
  ],
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "npm run build:js && npm run build:css",
    "lint": "vue-cli-service lint",
    "build:js": "webpack --config ./webpack.config.js",
    "build:css": "npx gulp sass"
  },
  "dependencies": {
    "core-js": "^3.8.3",
    "vue": "^2.6.14"
  },
  "devDependencies": {
    "@babel/core": "^7.12.16",
    "@babel/eslint-parser": "^7.12.16",
    "@vue/cli-plugin-babel": "~5.0.0",
    "@vue/cli-plugin-eslint": "~5.0.0",
    "@vue/cli-service": "~5.0.0",
    "eslint": "^7.32.0",
    "eslint-plugin-vue": "^8.0.3",
    "gulp": "^4.0.2",
    "gulp-minify-css": "^1.2.4",
    "gulp-sass": "^5.1.0",
    "node-sass": "^4.14.1",
    "sass": "^1.56.2",
    "sass-loader": "^13.2.0",
    "vue-loader": "^15.10.0",
    "vue-template-compiler": "^2.6.14",
    "webpack": "^5.75.0",
    "webpack-cli": "^5.0.1"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "@babel/eslint-parser"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

webpack.config.js

const path = require("path");
const { VueLoaderPlugin } = require("vue-loader");

const glob = require("glob");

const list = {};

async function makeList(dirPash, list){
    const files = glob.sync(`${dirPash}/**/index.js`);
    console.log("files:",files);
    for(let file of files){
        const component = file.split(/[/.]/)[2];
        console.log('component:',component)
        list[component] = `./${file}`;
    }
    console.log(list)
}

makeList('components/lib', list)
module.exports = {
    entry: list,
    mode: "development",
    output: {
        filename: "[name].umd.js", // card.umd.js
        path: path.resolve(__dirname, "dist"),
        library: "cui",
        libraryTarget: "umd"
    },
    plugins: [
        new VueLoaderPlugin(),
    ],
    module: {
        rules: [
            {
                test: /\.vue$/,
                use: [
                    {
                        loader: "vue-loader"
                    }
                ]
            }
        ]
    }
}

gulpfile.js

const gulp = require("gulp");
// const sass = require("gulp-sass");// sass转css
const sass = require('gulp-sass')(require('sass'));
const minifyCss = require("gulp-minify-css");

gulp.task("sass",async function(){
    return gulp.src("components/css/**/*.scss")
        .pipe(sass())
        .pipe(minifyCss())
        .pipe(gulp.dest("dist/css"));
})

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/100463.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

这让人眼前一亮的MySQL14个小玩意

前言 我最近几年用MYSQL数据库挺多的,发现了一些非常有用的小玩意,今天拿出来分享到大家,希望对你会有所帮助。 1.group_concat 在我们平常的工作中,使用group by进行分组的场景,是非常多的。 比如想统计出用户表中…

整个网页设置为全灰

前段时间,不是全网变灰色了嘛,整个网页的按钮、文本框、图片、文字等等都变成了灰蒙蒙的了,这是怎么做到的呢? 案例如下: 我就随便写个普通的html网页吧,在网页里随便写点文字和随便放几张图片(大概意思下…

TensorFlow安装与配置教程(2022.12)

1. TensorFlow的安装 首先需要安装 Anaconda 环境,可以转至:Anaconda3安装与配置教程(2022.11)。 然后我们打开 Anaconda,创建一个 TensorFlow 环境: conda create -n TensorFlow python3.9进入 TensorF…

API接口相关设计及基础知识

接口开发 API接口是什么 接口:预先定义的函数逻辑,供其他系统请求,然后返回结果 为什么需要API接口 核心需求:利用现有接口降低开发成本,缩短开发时间 API接口的核心是什么 接口地址请求参数(报文&am…

OPEN ALLIANCE TC2和TC9线束以太网测试标准?何种设备可以满足测试?除了矢量网分之外

OPEN ALLIANCE TC2和TC9线束以太网测试标准? 联盟中TC2汽车线束以太网线束定义标准: 100BASE-T1 Ethernet Channel & Components 100BASE-T1 offers a way to introduce modern signal processing in automotive, which allows optimal usage of th…

Prometheus Operator实战—— Prometheus、Alertmanager、Grafana 监控Springboot服务

1. Spring Boot 工程集成 Micrometer 1.1引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency><groupId>io.micrometer&l…

JVM简单介绍

JVMJVM内存区域划分JVM类加载机制JVM垃圾回收机制【哪些内存需要被JVM中垃圾回收机制回收】【JVM中垃圾回收机制的基本单位】【JVM中垃圾回收机制是如何判断对象是否是垃圾】【如何回收垃圾】JVM 是 Java Virtual Machine 的简称&#xff0c;意为 Java虚拟机。虚拟机是指通过软…

电巢:半导体ATE国产化产业探究(附国内外厂家汇总)

前言 2022年10月7日&#xff0c;美国BIS发布近年来范围最大半导体管制举措&#xff0c;管控范围包括芯片、设备、零部件、人员等。 12月6日下午&#xff0c;全球最大晶圆代工厂台积电&#xff0c;在美国亚利桑那州凤凰城高调举行了首批机台设备迁机仪式。 据联合早报12月8日报道…

分蛋糕

题目描述 SYCSYC在每个阶段结束(语言阶段、基础算法、提高算法)后,都会切蛋糕 现在MasMas有一个蛋糕,他希望将蛋糕分成nn份 规定一刀合法的蛋糕切法为符合以下两种条件之一 一刀的切痕迹是一条线段,线段两个端点在圆上,且线段经过圆心(切痕为圆的直径) 一刀的切痕迹是一条线…

[附源码]计算机毕业设计Python电商小程序(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等…

2023年数字信号处理前沿国际会议(CFDSP 2023)

2023年数字信号处理前沿国际会议&#xff08;CFDSP 2023&#xff09; 重要信息 会议网址&#xff1a;www.cfdsp.org 会议时间&#xff1a;2023年2月24-26日 召开地点&#xff1a;新加坡 截稿时间&#xff1a;2022年12月31日 录用通知&#xff1a;投稿后2周内 收录检索&am…

【OpenCV】SURF图像拼接和Stitcher拼接

介绍两种图像拼接的方法&#xff0c;一种是SURF算法的图像拼接&#xff0c;另一种是Stitcher硬拼接 首先先从简单的讲起 一、Stitcher直接拼接 可以实现多张图片一起拼接&#xff0c;只要两行代码就可以实现拼接&#xff1b; 1.首先准备多张图片&#xff0c;放入向量容器中…

PDF如何插入空白页?3 次点击在PDF中插入空白页!

由于工作和学习的需要&#xff0c;您可能需要在现有的PDF文件中插入一张空白页或几页PDF&#xff0c;使之成为一个完整的PDF文件。但是&#xff0c;PDF文件实际上是最终作品&#xff0c;似乎不可能向其添加额外的页面。事实上&#xff0c;将空白页或 PDF 文件插入现有 PDF 文件…

Conv2Former ~2

还是来说Conv2Former~~ 上次发了一次~~ 一种卷积调制模块&#xff0c;利用卷积来建立关系&#xff0c;这比注意力机制在处理高分辨率图像时更高效&#xff0c;称为 Conv2Former。作者在 ImageNet 分类、目标检测和语义分割方面的实验也表明&#xff0c;Conv2Former 比以前基于…

【2022.12.19】备战春招Day14——每日一题 + 234. 回文链表 + 860. 柠檬水找零

【每日一题】1971. 寻找图中是否存在路径 有一个具有 n 个顶点的 双向 图&#xff0c;其中每个顶点标记从 0 到 n - 1&#xff08;包含 0 和 n -1&#xff09;。图中的边用一个二维整数数组 edges 表示&#xff0c;其中 edges[i] [ui, vi] 表示顶点 ui 和顶点 vi之间的双向边。…

昆仑万维的AI作画简直就是业界天花板

AI作画的业界天花板被我找到了&#xff0c;AIGC模型揭秘 | 昆仑万维。 一、前景 1、AI和AIGC的关系 人工智能&#xff08;Artificial Intelligence&#xff09;&#xff0c;英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的…

SpringMVC入门到实战------ 十一 拦截器的使用

1、拦截器的配置 拦截器用于拦截控制器方法的执行 拦截器需要实现HandlerInterceptor 拦截器必须在SpringMVC的配置文件中进行配置 1.1 和1.2 是对所有的请求进行拦截&#xff1b;1.3 对排出的请求不在拦截 1.1 不使用注解的情况 创建拦截器类 /*** 拦截器* author zyz* ve…

牛客竞赛每日俩题 - Day11

目录 错排问题 有理数运算 错排问题 年会抽奖__牛客网 全部都不获奖的概率必定是由 n个人都拿错的情况种数 除 n个人拿出的所有排列情况数。n个人拿出的所有排列情况数显然是n的阶乘。 假设a的名字没有被a拿到&#xff0c;其他n - 1个人都有可能拿到&#xff0c;即有n - 1种…

JavaScript 中的设计模式

目录 1. 单例模式 2. 策略模式 3. 代理模式 4. 装饰者模式 5. 组合模式 6. 工厂模式 7. 访问者模式 8. 发布订阅模式 9. 观察者模式 10. 参考链接 设计模式&#xff08;Design Pattern&#xff09;是从许多优秀的软件系统中&#xff0c;总结出的成功的、能够实现可维…

CentOS 7安装及使用MobaXterm连接

1、 下载centos7映像文件地址&#xff1a;http://mirrors.aliyun.com/centos/7/isos/x86_64 选择CentOS-7.0-x86_64-DVD-2009.iso 标准安装版或者CentOS-7-x86_64-Everything-1908.iso下载 2、安装centos7 2.1、右击以管理员身份运行 2.2、点击创建新的虚拟机 2.3、选择…