uniapp的h5改成用npm打包

因为项目一开始是再hbuilder上写好的了, 后续被通知要用npm来执行

先用命令来创建项目

这个命令执行的比较慢,需要在网络好的时候执行,如果老是超时,可以考虑开加速器
这个命令需要vue-cli 3.0以上的版本才能执行下载
javascript 复制代码
vue create -p dcloudio/uni-preset-vue my-project
记录一下下载脚手架

npm install -g @vue/cli (安装的是最新版)

npm install -g @vue/cli@3.11.0(指定版本安装【指定版本为3.0以上版本】,其中3.11.0为版本号)

通过命令行查询可用的包的版本号:

npm view vue-cli versions --json (3.0以下版本)

npm view @vue/cli versions --json (3.0以上版本)

注意:

Vue CLI 4.5以下,对应的是Vue2

Vue CLI 4.5及以上,对应的是Vue3

下载的时候会让选择uniapp的模版, 选择默认模板就行

下载完成后,浏览package.json,里面的配置都弄好了

尝试启动一下,看是否报错
然后把uniapp里面的文件直接放在src下面,下图右边用红色圈起来可以不用放进去,
放进去后,再尝试启动,然后根据报错,挨个下载插件,

我遇到的问题

1.缺少node-sass,我node版本是14.17.0,对应下载的node-sass是4.14.0,有时候会因为网络问题,请用vpn,

javascript 复制代码
npm install node-sass@4.14.0

之前我node是16的,然后安装node-sass的版本是7,但是会报错Error: Node Sass version 7.0.1 is incompatible with ^4.0.0.;然后更换了node版本为14后就好了。

2.如果要切换node版本,要记得把node_modules和package-lock.json删除,然后再切换node版本重新下载依赖,

3.报错:Error: PostCSS plugin postcss-discard-comments requires PostCSS 8Migration guide for end-users

原因autoprefixer版本过高了 安装指定版本​

javascript 复制代码
npm i postcss-loader autoprefixer@8.0.0

还有一些缺少插件的报错,就不一一展示了,

重启项目后就好了

配置文件的打包,用 npm run build会打包失败,用npm run build:h5就打包成功,不太清楚原理

相关推荐
学习前端的小z1 分钟前
【前端】深入理解 JavaScript 逻辑运算符的优先级与短路求值机制
开发语言·前端·javascript
彭世瑜25 分钟前
ts: TypeScript跳过检查/忽略类型检查
前端·javascript·typescript
FØund40426 分钟前
antd form.setFieldsValue问题总结
前端·react.js·typescript·html
Backstroke fish26 分钟前
Token刷新机制
前端·javascript·vue.js·typescript·vue
小五Five28 分钟前
TypeScript项目中Axios的封装
开发语言·前端·javascript
小曲程序28 分钟前
vue3 封装request请求
java·前端·typescript·vue
临枫54128 分钟前
Nuxt3封装网络请求 useFetch & $fetch
前端·javascript·vue.js·typescript
RAY_CHEN.29 分钟前
vue3 pinia 中actions修改状态不生效
vue.js·typescript·npm
前端每日三省29 分钟前
面试题-TS(八):什么是装饰器(decorators)?如何在 TypeScript 中使用它们?
开发语言·前端·javascript
小刺猬_98530 分钟前
(超详细)数组方法 ——— splice( )
前端·javascript·typescript