uniapp微信小程序使用vscode代替HBuilderX开发uniapp微信小程序并且vscode改动代码微信开发者工具能实时更新

前言

最近公司开发新的小程序项目,经调研综合所有人员考虑,用uni-app Vue3+ts+vite技术栈开发;而官方推荐使用HBuilderX开发,而考虑到目前公司所有前端人员对VsCode更熟悉,故此总结了一下uniapp项目使用vscode代替HBuilderX开发。以下是由微信小程序项目为例:

搭建uni-app项目(以下是使用命令安装)

具体你查看官方文档

npx degit dcloudio/uni-preset-vue#vite-ts 项目名称

项目安装完成后

1、修改manifest.json文件

在这里插入图片描述

2、安装依赖&运行项目(推荐使用pnpm)

# 安装pnpm
npm install pnpm -g
# 安装依赖
pnpm install
# 运行项目
pnpm dev:mp-weixin

3、导入微信开发者工具

项目运行成功后会生成dist文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

若出现如下报错
http://****** 不在以下 request 合法域名列表中,请参考文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html(env: Windows,mp,1.06.2401020; lib: 3.4.3)
在这里插入图片描述
解决在这里插入图片描述

用 VS Code 开发 uni-app 项目

HbuilderX 对 TS 类型支持暂不完善
VS Code 对 TS 类型支持友好,熟悉的编辑器

1、安装uni-app插件

uni-create-view ---->可快速创建uni-app页面

uni-helper ----->uni-app代码提示

uniapp小程序扩展 ------->鼠标悬停查看文档

在这里插入图片描述

2、安装类型声明文件(进行TS类型校验)

pnpm i -D @types/wechat-minirogram @uni-helper/uni-app-types

2-1、配置tsconfig.json

{
  "compilerOptions": {
    "types": [
      "@dcloudio/types", // uni-app API 类型
      "@types/wechat-miniprogram",
      "@uni-helper/uni-ui-types", // uni-ui 组件类型
      "@uni-helper/uni-app-types" // uni-app 组件类型
    ]
  },
  //加入配置,将标签视为原始组件
  "vueCompilerOptions": {
    "nativeTags": [
      "block",
      "component",
      "template",
      "slot"
    ]
  }
}

3、page.json文件添加注释

在这里插入图片描述
在这里插入图片描述

解决vscode改动代码微信开发者工具能实时更新

Vs Code改动(取消自动保存)

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/c11f63e957154159b326b32a6ec87c5f.png

微信开发者工具改动如下:

去掉修改文件时自动保存

关闭热重载

在这里插入图片描述
在这里插入图片描述

Vs Code 出现类型“{ class: string; }”的参数不能赋给类型错误时

类型“{ class: string; }”的参数不能赋给类型“ComponentPublicInstanceConstructor<CreateComponentPublicInstance<Readonly<ExtractPropTypes<Partial<{ hoverClass: string; hoverStopPropagation: boolean; hoverStartTime: number; hoverStayTime: number; }>>>, … 18 more …, {}>, … 4 more …, MethodOptions> & … 4 more … & Record<…>”的参数。
不能将类型“{ class: string; }”分配给类型“ComponentPublicInstanceConstructor<CreateComponentPublicInstance<Readonly<ExtractPropTypes<Partial<{ hoverClass: string; hoverStopPropagation: boolean; hoverStartTime: number; hoverStayTime: number; }>>>, … 18 more …, {}>, … 4 more …, MethodOptions>”。
类型“{ class: string; }”提供的内容与签名“new (…args: any[]): CreateComponentPublicInstance<Readonly<ExtractPropTypes<Partial<{ hoverClass: string; hoverStopPropagation: boolean; hoverStartTime: number; hoverStayTime: number; }>>>, … 18 more …, {}>”不匹配。ts-plugin(2345)在这里插入图片描述

解决方法(使用Vue - Official2.012版本)

在这里插入图片描述

相关文章

基于ElementUi再次封装基础组件文档


基于ant-design-vue再次封装基础组件文档


vue3+ts基于Element-plus再次封装基础组件文档

  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wocwin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值