开发环境和选型
现在开发小程序,流行的有:
1、XX小程序开发工具
如百度、微信、支付宝、钉钉等,都有自己的原生的开发工具;
缺点:可能不互通,也就是微信小程序只能在微信上运行;语法规则不同公司的可能会不一样。
2、uni-app
由HBuildX公司dcloud开发的uni-app 小程序,用Vue编写,一次可以打包到多个小程序平台上发布,不用每个公司都写一次。
官网:https://uniapp.dcloud.net.cn/
========================
安装
1、安装NodeJS
https://www.yuque.com/yejielin/mypn47/wwz0am
后面创建项目是以NodeJS自带的npm为基础的,因此需要安装NodeJS
2、安装HBuilderX
https://www.dcloud.io/hbuilderx.html
创建项目(Vue3)
说明
Uni-app已经支持Vue3 和 Vue3的composition API,这里创建Vue3 小程序项目。
目前小程序,仅支持 cli 方式创建支持 vue3 默认模板项目,不支持Vite,可能是因为Vite打包后的文件夹有关,期待后续发展。
官方的教程可查看:https://ask.dcloud.net.cn/article/id-37834
1、全局安装vue-cli
打开控制台 (cmd,也叫命令行工具),输入
npm install -g @vue/cli
2、创建Uni-App的vue3工程
windows环境下,找到你想要存放这个项目的文件夹,然后在上面地址栏上输入cmd,打开命令行工具,这样做同时会设置好前面的路径

然后输入
vue create -p dcloudio/uni-preset-vue#vue3 my-vue3-project
这里的my-vue3-project,是你项目的名字,可以随意更改
安装过程中会询问,是默认的项目(JS),还是用TypeScripts的项目,按你个人选择。
3、打开HBuilderX,导入项目

4、安装小程序模拟器
打开HBuilderX,左边点一下项目目录,然后点击运行,运行到小程序模拟器,点击运行设置,可以查看各个平台的模拟器下载地址

5、打开小程序服务端口
这里以微信小程序为例。
打开小程序,点右上角的齿轮设置,打开服务端端口,这样HBuilderX才能调用小程序模拟器运行项目。
6、设置模拟器路径
打开HBuilderX,左边点一下项目目录,然后点击运行,运行到小程序模拟器,点击运行设置
输入你下载的模拟器的安装路径,以便HBuilderX访问这个路径去调用小程序模拟器。
7、模拟器运行
通过HBuilderX运行项目即可,上面的是从项目默认的页面进入,下面的是单独运行某个页面。
点击后,HBuilderX就会调用模拟器,把文件放到模拟器上运行,模拟器要编译(下图提示),因此要等一小段时间(1-2分钟),编译好后自动会显示

8、安装和配置VueX
Uni-App自带Vuex3,但由于项目是Vue3的,对应的应该是要使用Vuex4才对,你按Vuex3来配置会报错,因此需要给项目安装Vuex4
HBuilderX 左侧点击一下项目目录,再点下面的终端按钮,可以快速打开命令控制台
然后输入下面代码,安装VueX
npm i vuex@next
安装完后,项目根目录下的src目录,创建store文件夹,里面创建 index.js 文件
index.js中输入
// 1、引入vuex 的方法createStoreimport { createStore } from 'vuex'// 2、创建state 数据管理池const state = {message: "Hello Uni-app"};// 3、创建store仓库const store = createStore({state,})// 4、导出模块到全局export default store;
然后src文件夹下的 main.js 改为:
import {createApp} from 'vue'import App from './App.vue'// 引入 Vuex 的index文件夹import store from './store/index.js'createApp(App).use(store) // 加载Vuex这个模块.mount()
最后在页面中使用:
src/pages/index/index.vue
<template><view class="content"><image class="logo" src="/static/logo.png"></image><view><text class="title">{{ title }} 5、在这里使用Vuex {{ message }}</text></view></view></template><script>// 1、引入vuex 的useStore方法import { useStore } from 'vuex';export default {setup() {// 2、使用useStore,获取Vuex实例const store = useStore();// 3、通过store.state获取状态(数据)let message = store.state.message;return {title: 'hello',message // 4、返回这个变量,给template使用};}};</script><style>.content {text-align: center;height: 300upx;padding:0upx 10upx;}.logo {height: 200upx;width: 200upx;margin-top: 200upx;}.title {font-size: 36upx;color: #8f8f94;}</style>
9、其他
AppID
如果提示没有AppID,就打开模拟器点击创建项目,选择测试号即可
路由
小程序有自己的路由规则,无法使用Vue Router
注意事项(重要)
官方关于Vue3版本的Uni-app注意事项
