gulp 错误集锦

为了打包构建之前的layui写的项目,用到了gulp,但是遇到的坑还挺多,记录一下。

1、运行gulp时报错

ReferenceError: primordials is not defined

解决办法:

ReferenceError: primordials is not defined 意思是primordials这个没被定义,是因为项目中gulp版本和node版本不兼容,先看下本地的版本:

方法1,降级node和升级gulp,不建议。

方法2,使用npm shrinkwrap锁定依赖版本。

1、项目根目录新建npm-shrinkwrap.json,删掉node_modules
2、npm-shrinkwrap.json内容修改如下:

{"dependencies": {"graceful-fs": {"version": "4.2.2"}}
}

 
然后重新执行npm install,这时候再去执行gulp相关操作就不会报错了。
注意:这个文件在执行过一次npm install以后,里边内容就变了,下次再想重新执行,要再复制一遍。

注意package.json 中"gulp-babel": "^8.0.0",  这个版本不报错,7.0报错。

{"name": "OnePic","version": "3.0.0","description": "","license": "LPPL","author": ["xianxin <xianxin@layui-inc.com>"],"homepage": "http://www.layui.com/admin/","devDependencies": {"@babel/core": "^7.22.20","@babel/plugin-proposal-class-properties": "^7.18.6","@babel/plugin-transform-runtime": "^7.22.15","@babel/preset-env": "^7.22.20","@babel/runtime": "^7.22.15","babel-loader": "^8.3.0","chai": "^4.1.1","del": "^2.2.2","gulp": "^3.9.1","gulp-babel": "^8.0.0","gulp-concat": "^2.6.0 ","gulp-header": "^1.8.8","gulp-if": "^2.0.1","gulp-minify-css": "^1.2.4","gulp-rename": "^1.2.2","gulp-replace": "^0.6.1","gulp-uglify": "^1.5.4","minimist": "^1.2.0","mocha": "^3.2.0","sinon": "^3.2.1","sinon-chai": "^2.13.0"}
}

参考链接:

gulp项目中ReferenceError: primordials is not defined报错解决方法_萧&萧的博客-CSDN博客

2、gulp-uglify压缩js文件时报错之 punc(()

报错内容: SyntaxError: Unexpected token: punc (()
问题分析: 这种大多是js代码中包含ES6语法的函数声明方式,或者函数声明写的有问题。报错提供的行号不一定准确,只能自己找到使用ES6语法的位置,改成ES5。或者把语法错的地方改好。
解决方法: 把ES6代码替换成ES5代码;把错误的函数声明改对。

(今天遇到的7千行代码报一个不准确的错误,最后把文件拆分成了好几个逐个排查,总算定位了错误。函数声明没写对,多了个逗号,/(ㄒoㄒ)/~~)

3. gulp-uglify压缩js文件时报错之 Unexpected token name

报错内容: _Unexpected token name «p», expected punc «
问题分析: 问题原因同上,也是ES6语法引起的。不过这个是声明变量let的原因。
解决方法:let改成var

4. gulp-uglify压缩js文件时报错之 Unexpected token name

报错内容: _Unexpected token name «p», expected punc «
问题分析: 问题原因同上,也是ES6语法引起的。不过这个是声明变量let的原因。
解决方法:let改成var

5、gulp-uglify不识别箭头函数,要改成普通的函数

6. gulp-htmlmin

报错内容: throw er; // Unhandled 'error' event ^ Error: Parse Error: <= 95% </spa<div
问题分析: 遇到html压缩时的解析错误,此处是因为小于号<引起的。
解决方法: 小于号<改用编码方式&lt;
 参考链接:gulp 错误集锦 - 简书

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

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

相关文章

html文件中引入.ts文件并运行

问题&#xff1a; 一个项目&#xff0c;是用TypeScript编写的&#xff0c;但是html中引入了.ts文件后报错了&#xff0c;有没有办法跳过tsc这个编译命令&#xff0c;不然每次都需要Tsc编译一下后再启动&#xff0c;有点麻烦 <!doctype html> <html lang"zh-CN&q…

宝塔Node部署nuxt3

宝塔Node部署nuxt3 1、首先本地执行打包 yarn build2、然后把目录中的这个文件压缩成zip 3、在宝塔文件处添加一个网站的文件目录&#xff0c;并把文件解压到里面 4、点击左侧的网站&#xff0c;然后选择node项目&#xff0c;选择node版本安装 5、安装完后&#xff0c;点击新…

03-Zookeeper客户端使用

上一篇&#xff1a;02-Zookeeper实战 1. 项目构建 zookeeper 官方的客户端没有和服务端代码分离&#xff0c;他们为同一个jar 文件&#xff0c;所以我们直接引入zookeeper的maven即可&#xff0c; 这里版本请保持与服务端版本一致&#xff0c;不然会有很多兼容性的问题 <…

Minecraft 1.20.x Forge模组开发 06.建筑生成

我们本次尝试在主世界生成一个自定义的建筑。 效果展示 效果展示 效果展示 由于版本更新缘故,1.20的建筑生成将不涉及任何Java包的代码编写,只需要在数据包中对建筑生成进行自定义。 1.首先我们要使用游戏中的结构方块制作一个建筑,结构方块使用教程参考1.16.5自定义建筑生…

el-menu 导航栏学习(1)

最简单的导航栏学习跳转实例效果&#xff1a; &#xff08;1&#xff09;index.js路由配置&#xff1a; import Vue from vue import Router from vue-router import NavMenuDemo from /components/NavMenuDemo import test1 from /components/test1 import test2 from /c…

【Rust日报】2023-09-26 Deadpool v0.10 发布

Deadpool v0.10 发布 Deadpool是一个简单易用的异步连接和支持任意类型对象的池。 这个包提供了两种实现方式&#xff1a; 托管池&#xff08; deadpool::managed::Pool &#xff09; 根据需要创建和回收对象适用于数据库连接池通过 Cargo.toml 中的 managed 功能实现 未管理的…

前端工作日常

机缘 记录和遇到的问题作为记录 收获 收获代码提高和认知 日常 使用js去操作数组或者对象 空闲时间可以多学学基础算法 比如&#xff08;冒泡&#xff0c;倒序&#xff0c;去重&#xff0c;笛卡尔积算法&#xff0c;各种各样的排序方法等等等&#xff09; 正确良好的使用循环…

nodejs+vue 经典建筑网站elementui

第1章 项目概述 1 1.1 问题描述 1 1.2 项目目标 1 1.3 项目适用范围 2 1.4 项目应遵守的规范与标准 2 1.5 涉众 2 具有功能强大、支持跨平台、运行速度快、安全性高、成本低等优点。而对于后者我们使用 来完成它&#xff0c;使其网页功能完备&#xff0c;界面友好、易开发、易…

程序通过命令行获取操作系统名称+版本+CPU名称等:Part2

文章目录 &#xff08;一&#xff09;沿用的方法&#xff08;二&#xff09;问题和调整&#xff08;2.1&#xff09;Windows11的版本号是10.0&#xff08;2.2&#xff09;Golang和管道符号&#xff08;Linux&#xff09;&#xff08;2.3&#xff09;最大内存容量 vs 当前安装内…

华为云云耀云服务器L实例评测|使用华为云耀云服务器L实例的CentOS部署Docker并运行Tomcat应用

目录 前言 步骤1&#xff1a;登录到华为云耀云服务器L实例 步骤2&#xff1a;安装Docker 并验证Docker安装 步骤3&#xff1a;拉取Tomcat镜像并运行Tomcat容器 步骤4&#xff1a;放行8080端口 步骤5&#xff1a;访问tomcat 步骤6&#xff1a;管理Tomcat容器 小结 前言 …

【c语言的malloc函数介绍】

malloc&#xff08;memory allocation的缩写&#xff09;是C语言中的一个函数&#xff0c;用于动态分配内存空间。这个函数允许你在程序运行时请求指定大小的内存块&#xff0c;以供后续使用。malloc函数属于标准库函数&#xff0c;需要包含头文件#include <stdlib.h> 才…

NLP 项目:维基百科文章爬虫和分类 - 语料库阅读器

塞巴斯蒂安 一、说明 自然语言处理是机器学习和人工智能的一个迷人领域。这篇博客文章启动了一个具体的 NLP 项目&#xff0c;涉及使用维基百科文章进行聚类、分类和知识提取。灵感和一般方法源自《Applied Text Analysis with Python》一书。 在接下来的文章中&#xff0c;我将…

回调地狱的产生=>Promise链式调用解决

常见的异步任务包括网络请求、文件读写、定时器等。当多个异步任务之间存在依赖关系&#xff0c;需要按照一定的顺序执行时&#xff0c;就容易出现回调地狱的情况。例如&#xff0c;当一个网络请求的结果返回后&#xff0c;需要根据返回的数据进行下一步的操作&#xff0c;这时…

本地项目远程Linux运行

文章目录 1 本地安装anconda&#xff08;如果不需要在本地运行&#xff0c;这步可以忽略&#xff09;2 进入本地conda环境&#xff08;如果不需要在本地运行&#xff0c;这步可以忽略&#xff09;2.1 查看已存在的环境2.2 创建新的conda环境2.3 激活新建的环境2.4 安装tensorfl…

大学生登记国家证书软件著作权提升就业资质

大学生登记国家证书软件著作权提升就业资质 随着信息技术的快速发展&#xff0c;软件行业成为了许多大学生就业的热门选择之一。然而&#xff0c;在竞争激烈的就业市场中&#xff0c;除了掌握专业知识和技能外&#xff0c;如何提升自己的就业资质也显得尤为重要。其中&#xff…

Vivado与Notepad++关联步骤

填写内容 先看"关联步骤"再看此处&#xff1a; 在“editor”栏中填写 Notepad的路径&#xff0c;并加上[file name] -n[line number]&#xff0c; 这里我的 Notepad 的路径为 C:/Program Files (x86)/Notepad/notepad.exe &#xff1b; 故这里我就填上以下内容即可…

[C#]vs2022安装后C#创建winform没有.net framework4.8

问题&#xff0c;我已经在visualstudio安装程序中安装了.net框架4.8的SDK和运行时。 然而&#xff0c;我在visual studio 2022中找不到已安装的框架。 我已经检查了我的VS 2019&#xff0c;它可以很好地定位网络框架4.8&#xff0c;它可以构建我的项目。但VS 2022不能。 我已经…

ffmpeg解复用指定pid转推udp

命令 ffmpeg -re -i udp://224.2.2.2:4003?fifo_size1024000 -map #5001 -acodec copy -flush_packets 1 -f mpegts udp://192.168.2.62:5161 ffmpeg -re -i udp://224.2.2.2:4003?fifo_size1024000 -map #5001 -acodec copy -flush_packets 1 -f mpegts udp://192.16…

idea集成tomcat(Smart Tomcate插件安装)

当我们在 tomcat 上部署好一个 webapp 后&#xff0c;如果我们要修改代码&#xff0c;就需要重新进行打包和部署&#xff0c;但往往在工作中是需要频繁修改代码&#xff0c;然后再查看成果的&#xff0c;就需要反复的进行打包和部署的过程&#xff0c;这是很麻烦的 通过 Smart …

C# 继承

C# 继承 继承的类型实现继承虚方法隐藏方法调用函数的基类版本抽象类和抽象函数密封类和密封方法派生类的构造函数修饰符访问修饰符其他修饰符 接口 继承的类型 实现继承 表示一个类型派生于一个基类型&#xff0c;拥有该基类型的所有成员字段和函数。在实现继承中&#xff0c…