使用vscode开发uniapp, 摆脱hbuilder

使用vscode开发uniapp, 摆脱hbuilder

创建项目

  • 创建uniapp项目
bash 复制代码
vue create -p dcloudio/uni-preset-vue helloproject
  • 选择模版
    这里我选择默认模版
bash 复制代码
> 默认模板
  默认模板(TypeScript)
  Hello uni-app
  前后一体登录模板
  看图模板
  新闻/资讯类模板
  自定义模板
  • 启动项目
bash 复制代码
npm i
npm run serve

我这里启动项目报错,如下:

bash 复制代码
Syntax Error: Error: PostCSS plugin autoprefixer requires PostCSS 8.
Migration guide for end-users:
https://github.com/postcss/postcss/wiki/PostCSS-8-for-end-users

安装了依赖后,正常启动了

bash 复制代码
npm i postcss-loader autoprefixer@8.0.0
  • 安装vscode插件
  1. uni-create-view: 在 VSCode 右键点击文件夹可以快速创建页面与组件,创建页面时将自动添加 pages.json
  2. uni-helper:uni-app 代码提示
  3. uniapp小程序扩展:提供创建页面和组件功能,鼠标悬停到组件上的 API 提示功能

添加 ts 类型校验

  • 安装类型声明文件
bash 复制代码
npm i -D @types/wechat-miniprogram @uni-helper/uni-app-types
  • 配置 tsconfig.json
json 复制代码
{
  // 其他配置项
  ...,
  
  "compilerOptions": {
    "sourceMap": true,
    "paths": {
      "@/*": ["./src/*"]
    },
    "types": [
      "@dcloudio/types",
      "@types/wechat-miniprogram",
      "@uni-helper/uni-app-types"
    ]
  },
  "vueCompilerOptions": {
    "experimentalRuntimeMode": "runtime-uni-app",
    "nativeTags": [
      "block",
      "component",
      "template",
      "slot"
    ]
  },
  
  // 其他配置项
  ...
}
  • 重启VsCode

其他配置

  • 使用scss,建议使用以下版本
bash 复制代码
npm i -D sass-loader@7.3.1
npm i -D node-sass@4.14.1
  • json 注释问题
    • 打开vscode的设置,搜索文件关联
    • Files: Associations, 添加项,
    • 项: manifest.json, 值: jsonc
    • 项: pages.json, 值: jsonc

使用uni-ui组件库

  • 安装
bash 复制代码
npm i @dcloudio/uni-ui
  • 配置easycom
    打开项目根目录下的 pages.json 并添加 easycom 节点:
json 复制代码
// pages.json
{
	"easycom": {
		"autoscan": true,
		"custom": {
			// uni-ui 规则如下配置
			"^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"
		}
	},

	// 其他内容
	pages:[
		// ...
	]
}
  • 配置uni-ui组件类型声明
bash 复制代码
npm i -D @uni-helper/uni-ui-types
  • 配置 tsconfig.json
    types中添加 @uni-helper/uni-ui-types@dcloudio/types
json 复制代码
{
  // 其他配置项
  ...,
  
  "compilerOptions": {
    "sourceMap": true,
    "paths": {
      "@/*": ["./src/*"]
    },
    "types": [
      "@dcloudio/types",
      "@types/wechat-miniprogram",
      "@uni-helper/uni-app-types",
      "@uni-helper/uni-ui-types"
    ]
  },
  "vueCompilerOptions": {
    "experimentalRuntimeMode": "runtime-uni-app",
    "nativeTags": [
      "block",
      "component",
      "template",
      "slot"
    ]
  },
  
  // 其他配置项
  ...
}
相关推荐
千寻简1 小时前
Cursor免费 GPT-4 IDE 工具的保姆级使用教程
java·运维·ide·ai
Angus-zoe2 小时前
uniapp+vue+微信小程序实现侧边导航
vue.js·微信小程序·uni-app
Pluto & Ethereal2 小时前
uni-app尺寸单位、flex布局于背景图片
uni-app
我是一颗小小的螺丝钉5 小时前
idea插件推荐之Cool Request
java·ide·intellij-idea
天空下sky8 小时前
uniapp+若依 开发租房小程序源码分享
uni-app
帅过二硕ฅ8 小时前
uniapp点击跳转到对应位置
前端·javascript·uni-app
我命由我1234513 小时前
2.使用 VSCode 过程中的英语积累 - Edit 菜单(每一次重点积累 5 个单词)
前端·javascript·ide·vscode·学习·编辑器·学习方法
佩淇呢15 小时前
uniapp vue3 梯形选项卡组件
前端·vue.js·uni-app
[廾匸]19 小时前
uni-app获取设备唯一值、静态IP以及公网IP的方法
uni-app·ip·imei·唯一值
疑惑的杰瑞20 小时前
[乱码]确保命令行窗口与主流集成开发环境(IDE)统一采用UTF-8编码,以规避乱码问题
java·c++·vscode·python·eclipse·sublime text·visual studio