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 分钟前
实现必要的流式输出(Streaming)
前端·后端·agent
张元清5 分钟前
useMediaQuery:React 响应式设计完全指南
前端·javascript·面试
小金鱼Y5 分钟前
一文吃透 JavaScript 防抖:从原理到实战,让你的页面不再 “手抖”
前端·javascript·面试
Z兽兽8 分钟前
React 18 开发环境下useEffect 会执行两次,原因分析及解决方案
前端·react.js·前端框架
the sun348 分钟前
Linux驱动开发:环境准备与报错处理
linux·运维·服务器
紫_龙10 分钟前
最新版vue3+TypeScript开发入门到实战教程之Vue3详解props
前端·vue.js·typescript
MC_J16 分钟前
Linux 6.1 移植RTL8723du驱动
linux·arm
树上有只程序猿17 分钟前
这波低代码热,能维持多久
前端
姓王名礼22 分钟前
这是一个完整的全栈交付包,包含Vue3 前端交互界面(集成数字人视频流、ECharts 图表、语音对话)和Docker Compose 一键部署脚本。
前端·docker·echarts
嵌入式-老费26 分钟前
vivado hls的应用(axis接口)
前端·webpack·node.js