webpack打包vue文件+gulp打包sass文件

news2025/2/25 10:33:41

webpack打包vue文件

1,下载依赖

npm i vue-loader
npm i webpack-cli

2,编写webpack配置文件

/**
 * 关于webpack的配置文件
 */
 const path = require('path')
 const { VueLoaderPlugin } = require('vue-loader')
 const glob = require('glob') // node自带的读取文件的库
/**
 * 配置entry的对象,将所有的组件都按照一定格式放在对象中
 * 主要的格式是 components/lib/card,components/lib/demo
 * 由于之后可能会添加其他的组件,所以使用动态引入的方式来进行引入
 */
const entryList = {}, dirPath = 'components/lib'
makeEntryList(dirPath,entryList)
async function makeEntryList(dirPath, entryList){
     const files = glob.sync(`${dirPath}/**/index.js`)
     for(file of files){
          const component = file.split(/[/.]/)[2]
          entryList[component] = `./${file}`
     }
}
/**
 * webpack的配置部分
 */
module.exports = {
     entry: entryList,
     mode: 'development',
     output: {
          filename: '[name].umd.js',
          path: path.resolve(__dirname,'dist'),
          library: 'umi',
          libraryTarget: 'umd'
     },
     plugins: [
          new VueLoaderPlugin()
     ],
     module: {
          rules: [ // 告诉webpack 什么样的文件使用哪个loader
               {
                    test: /\.vue$/,
                    use: [
                         {
                              loader: 'vue-loader'
                         }
                    ]
               }
          ]
     }
}

3,修改命令

package.json文件中添加

"build:js": "webpack --config ./webpack.component.js",

4,测试

npm run build:js

出现dist文件,就算打包成功
在这里插入图片描述

5, 出现的问题

用npm安装vue-loader,webpack-cli的时候,显示版本不统一的错误,所以在安装的时候,最好看一下对应的版本。

使用cnpm进行安装错误会少一些。

gulp打包sass文件/css文件

1,安装环境

cnpm i gulp -D
cnpm i sass -D
cnpm i gulp-sass -D
cnpm i gulp-minify-css -D

2,创建一个gulp配置文件 gulpfile.js

const gulp = require('gulp')
const sass = require('gulp-sass')(require('sass')) //sass文件转换成css文件
const minifyCss = require('gulp-minify-css') // 用来压缩css文件的

// 使用gulp去创建流水线任务, 分别是执行sass转换成css, 压缩css文件, 输出到dist/css文件夹下
gulp.task('sass',async function(){
     return gulp.src('components/css/**/*.scss')
     .pipe(sass())
     .pipe(minifyCss())
     .pipe(gulp.dest('dist/css'))
})

3, 配置命令

"build:css": "npx gulp sass"

4, 测试

npm run build:css

出现下面css文件以及下面的css文件即可
在这里插入图片描述

6,出现的问题

1, 在打包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:

解决办法:
安装一下sass, 命令:cnpm i sass gulp-sass

2, TypeError: sass is not a function

解决办法:
安装一下sass

命令: cnpm i sass gulp-sass

在引入的时候,写成下面的形式:

const sass = require(‘gulp-sass’)(require(‘sass’)) //sass文件转换成css文件

开源地址

gitlab地址

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

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

相关文章

会多门编程语言的你,最推荐哪3-5门语言?

如果你还想在编程的路上继续提高,那我建议你至少学习4种编程语言。可用的编程语言有很多,所以选择一种感兴趣的学习就可以了。我这么建议的原因是,要掌握编程,建立信心,提高能力,最简单的办法就是学习多种编…

浅析工作流调度器Azkaban

title: Azkaban系列 第一章 概述 1.1 为什么需要工作流调度器 1、一个完整的数据分析系统通常都是由大量任务单元组成: shell 脚本程序,java 程序,mapreduce 程序、hive 脚本等 2、各任务单元之间存在时间先后及前后依赖关系 3、为了很好地…

TIA西门子博途V18安装教程及注意事项

TIA西门子博途V18安装教程及注意事项 前提条件: TIA Portal V18需要.Net Framework 3.5环境,所以在安装TIA V18之前要先安装它。大家可以在控制面板中的程序和功能中检查是否已经安装,如果没有,可以参考以下步骤自行安装: 操作系统&#x

jsp旅行网系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 旅行网系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql,使用java语…

[附源码]Python计算机毕业设计房屋租赁系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

2022级浙大MEM录取经验过程分享——有需求就要去匹配

我是2022 级 浙大MEM 新录取的考生,去年联考初试取得了213 分的成绩,综合拿到了148分,去年的提面中也拿到了优秀资格,在备考的过程中自己的一些心得体会和经验分享给大家,希望能够有所帮助。我的本科其实比较普通&…

python循环中的continue和break

目录 一.python中的continue 案例1 结果是 注意 案例2 结果是 二.python中的break 案例1 结果是 注意 案例2 结果是 三. python中continue和break的总结 一.python中的continue continue关键字用于:中断本次循环,直接进入下一次循环 continue可以用于:fo…

2.1.2 运算放大器的组成与分类、运算放大器的发展历程

笔者电子信息专业硕士毕业,获得过多次电子设计大赛、大学生智能车、数学建模国奖,现就职于南京某半导体芯片公司,从事硬件研发,电路设计研究。对于学电子的小伙伴,深知入门的不易,特开次博客交流分享经验&a…

1-10嵌入式Linux系统开发与应用|嵌入式Linux|第三章 Linux编程环境|下篇

目录 1.gcc编译器的使用 1.1gcc软件包 1.2一个基本实例 1.3gcc的主要选项 1.3.1指定函数库和包含文件的查找路径 1.3.2出错检查及警告 1.3.3优化选项 优化带来的问题 1.3.4调试选项 2.GNU C扩展简介 3.GNU make管理项目 3.1make简介 使用make管理项目的原因 4.编…

Nginx那些事儿2

负载均衡 当访问的服务具有多个实例时,需要根据某种“均衡”的策略决定请求发往哪个节点,这就是所谓的负载均衡,目的是为了将数据流量分摊到多个服务器执行,减轻每台服务器的压力,从而提高了数据的吞吐量 负载均衡的种类 常见的硬件有NetScaler、F5、Radware和Array等商用的负…

读懂英文文章所需的单词量

简介 备考托福,GRE需要背上万单词,除去考试通关的因素,就想看看是不是真有必要花时间去背那么多单词。 实验使用从初中到GRE不同等级考试要求的单词表,代入Brown文本数据集,评估背会各等级单词后,能看懂多…

基于51单片机的教室智能照明控制系统

硬件方案 本系统以51单片机作为控制模块的核心部件,采用热释红外人体传感器检测人体的存在,采用光敏三极管构成的电路检测环境光的强度;根据教室合理开灯的条件,通过对人体存在信号和环境光信号的识别与判断,完成对教室…

关于浙江22年下半年教师资格证面试报名注册时间

1 哪些考生可以报名 笔试各科成绩合格且在有效期内的并符合各省面试报考条件人员,可参加报名面试: 2 报名分三阶段 12月9日~12日:网上报名 12月5日起开始注册,根据各省报考公告,考生登陆“NTCE-中国教育考试网”(ht…

Delphi记录

文章目录软件安装基础参考书名词释义基本语法常用函数数学运算函数字符处理函数日期时间函数顺序类型函数操作IDE设置去掉Delphi程序启动时的welcome page(欢迎页)设置环境变量的PATH及library的path安装控件如何在Delphi中安装库?安装Add-in-Exprexx安装TMS FlexCel 7.1 D10.…

Java#数据结构----1

目录 一.栈和队列 栈 队列 二.数组和链表 数组 链表 一.栈和队列 栈 栈的特点:后进先出,先进后出 数据进入栈模型的过程称为:压/进栈 数据离开栈模型的过程称为:弹/出栈 队列 队列的特点:先进先出,后进后出 数据从后端进入队列的过程称为: 入队列 数据从前端离开队列的过…

iptables学习

iptables不算是一个真正的防火墙,它是一个配置Linux内核防火墙的命令行工具。将用户的安全设置同步到对应的安全框架–Netfilter。netfilter位于内核空间,iptables位于用户空间。 iptables用于ipv4,ip6tables用于IPv6。 netfilter/ptables 一…

python tkinter 的使用 — 桌面应用程序开发

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ Tkinter模块(“Tk 接口”)是Python的标准Tk GUI工具包的接口. Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里. Tk8.0的后续版本可以通过ttk实现本地窗口风格…

新电脑Mac安装前端环境,未完待续~

电脑:MacBook Pro (15-inch, 2017) 版本接近可以用迁移助理 太久远就只能新电脑环境重装了, 微信小程序,支付宝小程序,安卓,IOS 无非这几种 以下就是一名前端小程序开发人员环境配置步骤 仅供参考 新电脑安装 1.下载常…

【iOS】UICollectionView的基本使用

UICollectionView是与UITableView相似的控件,不过它的布局更加自由。 与UITableView的不同 tableViewcollectionView初始化需要指定布局style。需要指定一个布局类。子视图布局一行代表一个cell,布局只需要考虑行高。无视行列限制,一个item…

如何在 WSL 下实现 NGINX 反向代理

WSL 是 Windows 自带的 Linux 子系统。它比传统的虚机启动更快,占用系统资源更少,非常利于我们开发基于 Linux 系统的各种应用。本文基于 Ubuntu 20 介绍如何使用 NGINX 实现反向代理功能。 什么是反向代理? 反向代理是一个可以把系统请求分…