在VS Code中配置和使用UniApp开发的完整指南

admin10个月前 (05-19)it知识2278

UniApp是一个基于Vue.js的跨平台应用开发框架,而VS Code是许多开发者首选的轻量级代码编辑器。

本文将详细介绍如何在VS Code中配置UniApp开发环境、创建项目、调试以及解决常见问题。

一、环境准备与插件配置

1. 基础工具安装

首先需要安装以下基础工具:

  • Visual Studio Code‌:从官网下载最新版本

  • Node.js‌:建议安装LTS版本,用于运行npm/yarn等包管理工具

  • 微信开发者工具‌(如需开发微信小程序)

2. 推荐VS Code插件

在VS Code中开发UniApp项目,建议安装以下插件:

插件名称功能描述安装方式
uni-helper提供完整的uni-app API和组件代码提示,支持标签属性、事件等智能补全VS Code扩展商店搜索安装
Vue - Official官方Vue语法支持插件,对Vue 3 + TS开发友好,提供模板语法高亮、错误检测等功能VS Code扩展商店搜索安装
uni-create-view快速生成页面/组件模板,自动注册到pages.json中VS Code扩展商店搜索安装
uniapp小程序扩展鼠标悬停查看文档,快速跳转官方文档VS Code扩展商店搜索安装

这些插件可以大幅提升UniApp在VS Code中的开发体验和效率

3. TypeScript支持配置

如需使用TypeScript开发,还需要进行以下配置:

  1. 安装类型声明文件:

npm i -D @uni-helper/uni-app-types
  1. 修改tsconfig.json:

{  "compilerOptions": {    "types": ["@dcloudio/types", "@types/wechat-miniprogram", "@uni-helper/uni-app-types"]  }}
  1. 配置VS Code的文件关联:

"files.associations": {  "pages.json": "jsonc",  "manifest.json": "jsonc"}

这样可以获得更好的TS类型校验和代码提示

二、项目创建与配置

1. 创建UniApp项目

在VS Code中创建UniApp项目有两种主要方式:

方法一:使用Vue CLI创建

  1. 全局安装Vue CLI:

npm install -g @vue/cli
  1. 创建项目:

vue create -p dcloudio/uni-preset-vue my-uniapp-project

      选择默认模板

方法二:使用degit直接获取模板

npx degit dcloudio/uni-p[文]reset-vue#vite[章]-ts uniapp-base

这种方法会直接下载官方提供的使用了TypeScript和Vite的UniApp项目模板

 项目结构说明

典型的UniApp项目结构如下:

├─pages         # 业务页面文件存放的目录

│ └─index

│   └─index.[来]vue # index页面

├─static [自]       # 存放应用引用的本地静态资源的[一]目录

├─unpackage&nb[道]sp;    # 存放运行或发行的编译结果

├─index.html&n[,]bsp;   # H5端页面

├─main.js [一];      # Vue初始化入口文件

├─App.vue [个];      # 配置App全局样式、监听应用[分]生命周期

├─pages.json&n[享]bsp;   # 配置页面路由、导航栏、tab[的]Bar等

├─manifest.jso[网]n # 配置appid、应用名称、l[站]ogo、版本等打包信息

└─uni.scss      # uni-app内置的常用样式变量

运行项目

安装依赖后,可以使用以下命令运行项目:

# 安装依赖pnpm install# 运行微信小程序pnpm dev:mp-weixin# 运行H5pnpm dev:h5

运行成功后,微信小程序项目会生成在dist/dev/mp-weixin/目录下,可以导入微信开发者工具进行预览

三、调试配置

1. 微信小程序调试

  1. 首先确保已在manifest.json文件中配置了微信小程序的appid:

"mp-weixin": {  "appid": "wx1234567890",  "lazyCodeLoading": "requiredComponents"}

在VS Code中配置launch.json文件:

{  "version": "0.2.0",  "configurations": [    {      "type": "uniapp-run",      "request": "launch",      "name": "Uniapp Run",      "platform": "mp-weixin",      "openDevTool": true,      "vueVersion": "v3"    }  ]}

在VS Code的调试视图中选择"Uniapp Run"配置,点击"开始调试"按钮,项目将在本地启动并自动打开微信开发者工具

H5调试配置

对于H5端的调试,可以引入vConsole工具:

  1. 安装vConsole:

npm install vconsole
  1. 在App.vue中配置:

//#ifndef MPimport VConsole from 'vconsole';//#endiflet vConsole = null;export default {  onLaunch: function() {    //#ifndef MP    this.loadVConsole();    //#endif  },  methods: {    loadVConsole() {      if(urlConfig.isVConsole) {        vConsole = new VConsole({          defaultPlugins: ['system', 'network', 'element', 'storage'],          maxLogNumber: 1000        });      }    }  }}

这样在移动端H5环境中就可以像浏览器一样查看控制台日志了

跨域设置

在本地开发H5时,可能会遇到跨域问题,可以在manifest.json中配置代理:

"h5": {  "devServer": {    "https": false,    "port": 8080,    "proxy": {      "/apis": {        "target": "https://www.example.com",        "changeOrigin": true,        "secure": false,        "pathRewrite": {          "^/apis": ""        }      }    }  }}

然后在请求时将原域名替换为/apis前缀即可

四、脱离HBuilderX的开发方案

虽然HBuilderX是UniApp官方推荐的IDE,但在VS Code中也可以完全脱离HBuilderX进行开发:

  1. 使用uniapp run插件:

    • 在VS Code中安装uniapp run插件

    • 配置launch.json文件指定平台和Vue版本

    • 通过调试视图启动项目16

  2. 使用命令行工具:

    • 通过vue-clidegit创建项目

    • 使用npm/pnpm脚本运行和构建

    • 完全不需要安装HBuilderX

  3. 主要优势:

    • 更好的TypeScript支持

    • 更熟悉的开发环境

    • 更丰富的插件生态

    • 更灵活的项目配置

五、常见问题与解决方案

1. 编译速度慢或卡住

解决方案:

# 升级依赖npx @dcloudio/uvm alpha# 检查vite版本# 如果版本过高可能导致问题,可以降级到稳定版本

 类型错误

对于VS Code中UniApp内置组件报错的问题:

  1. 确保安装了正确的类型声明文件

  2. 检查tsconfig.json配置

  3. 必要时添加类型断言

3. 依赖冲突

当出现ERESOLVE could not resolve错误时:

  1. 检查package.json中的版本要求

  2. 尝试删除node_modulespackage-lock.json后重新安装

  3. 使用npm install --legacy-peer-deps安装

4. 样式问题

UniApp中页面的父元素uni-page-body默认不具有height: 100%,可以在App.vue中全局设置:

page {  height: 100%;}

注意在微信小程序中使用page选择器会警告,建议仅在App.vue中设置

六、高效开发技巧

  1. 快速创建页面‌:

    • 使用uni-create-view插件右键菜单快速生成页面模板

    • 自动注册到pages.json

  2. 条件编译‌:

// #ifdef MP-WEIXINconsole.log('这是微信小程序平台');// #endif// #ifdef H5console.log('这是H5平台');// #endif
  1. 代码片段‌:

    • 利用VS Code的代码片段功能创建常用模板

    • 可以基于不同平台设置不同的代码片段

  2. 调试技巧‌:

    • 使用debugger语句在VS Code中设置断点

    • 结合浏览器开发者工具调试H5端

    • 使用微信开发者工具的远程调试功能3245

通过以上配置和技巧,您可以在VS Code中获得与HBuilderX相当甚至更好的UniApp开发体验,同时还能利用VS Code强大的扩展生态和自定义能力。


标签: 分享IT知识

相关文章

如果百度不收录,如何提高网站人气

假设你是一个新兴的瑜伽品牌,你创建了一个网站来宣传你的瑜伽课程和品牌。然而,你发现百度搜索引擎并没有收录你的网站,这导致你的网站流量和人气较低。以下是你可以采取的一些策略来提高网站人气:优化网站结构:...

暴风雨

暴风雨来临之前,天空中弥漫着一股压抑的气息。乌云密布,仿佛覆盖着一片灰暗的帷幕,将整个天地都笼罩在一片阴沉的氛围中。狂风大作,吹拂着路上的尘土和枝叶,让人感到一阵阵的凉意。突然,一声炸雷打破了寂静,紧...

黄金秋季

黄金秋季,这是一个充满色彩和韵味的季节。天空湛蓝,阳光明媚,微风轻拂,树叶由绿变黄,由黄变红,最终落叶归根。这是一个大自然最美丽的时刻,一切都在这一刻达到了高潮。秋天的阳光特别柔和,它不像夏天那样灼热...

《山海经》中的一卷--北山经

《北山经》概括性翻译概述一、引言《北山经》详细描述了北方的山川地理,以及在这些山川中栖息的奇异生物和丰富的自然资源。这些描述不仅展示了古人对北方自然界的深入观察与丰富想象,也反映了他们对自然界的敬畏与...

中山经--山海经

《中山经》薄山之首曰甘枣之山。共水出焉,而西流注于河。其上多杻木;其下有草焉,葵本而杏叶,黄华而荚实,名曰箨,可以已瞢。有兽焉,其状如[虫/虫|犬]鼠而文题,其名曰[嫨能-女],食之已瘿。又东二十里曰...

javascript 数据处理方法

以下是 JavaScript 中常用的数据处理方法整理,涵盖数组、字符串、对象、数字及数据类型判断等场景:一、数组处理‌遍历与转换‌map():遍历数组并返回新数组,常用于数据映射(如数值加倍)fil...