windows npm打包无问题,但linux npm打包后部分样式缺失

原因

前端package.json中指定的是依赖版本范围,而linux中使用npm install安装的版本与windows不同。

例如"@ant-design/icons": "^4.0.0"

插入符号^意味着它可以安装最新的兼容版本。如果希望它安装特定版本,可以在版本前面删除^

详见package.json文档符号学

插入符号将让它安装一个不改变第一个数字的更高版本。例如,你的package.json为@ant-design/icons指定了^4.0.0,但它安装了4.6.2。由于4没有改变,所以这也是可以接受的安装版本。

解决方案:

若不想改变源代码,则将package.json复制替换一下就行。

将package.json.bak中的"^替换为"

表示不接受版本范围,指定固定版本。

然后将package.json复制为package.json.bak

打包命令如下

复制代码
rm -rf ./node_modules/*
rm -rf package.json
cp package.json.bak package.json
npm config set user 0 
npm config set unsafe-perm true
npm install
rm -rf ./dist/*
npm run build:prod
相关推荐
程序员黑豆2 小时前
Java 注释详解:单行、多行与文档注释的完整指南
java·前端·ai编程
剪刀石头布啊2 小时前
antd中可编辑表格中巧用useWatch实现联动高性能效果,以及定制延伸学习
前端
油丶酸萝卜别吃3 小时前
前端转全栈学习路线
前端·学习
浮生望3 小时前
前端路由进阶:History API原理与手写HistoryRouter
前端
数智工坊4 小时前
Zotero自建Ubuntu WebDAV附件同步方案(完美解决存储空间不足)
linux·运维·ubuntu
陆枫Larry4 小时前
JavaScript 中的竞态是什么,为啥会有竟态?
前端
ltl5 小时前
HTTP/3 实战:从 QUIC 到 H3 的完整请求链路
linux
ltl5 小时前
POSIX 文件锁:flock、fcntl 与 NFS 上的工程陷阱
linux
ltl5 小时前
CUDA 生态:cuBLAS、cuDNN、NCCL、Triton、CUTLASS
linux
饺子大魔王的男人5 小时前
CentOS部署Cockpit:图形化查看系统、日志与服务状态
linux·运维·centos