【持续更新】uni-app前端项目小兔鲜儿微信小程序开发

欢迎各位读者,这是新开发的笔记栏目。基于uni-app来进行开发前端项目:小兔鲜儿的微信小程序。笔记基于视频教程:https://www.bilibili.com/video/BV1Bp4y1379L 进行笔记记录。

一、Day1

1、01-uni-app小兔鲜儿导学视频

所需的技术架构

2、02-创建uni-app项目

我们的话要先来创建uni-app项目,我们只要用到的软件叫做: HBuilderX,下载地址:https://dcloud.io/hbuilderx.html

我们先创建项目,选择项目命令路径,包括选择我们的Vue版本。设置完后就可以直接创建就可以了

创建项目之后,我们查看项目的文件,并没有发现我们常见的ML和SSS文件后缀(微信小程序需要用的),这时候就需要我们去下载一个插件,在导航栏中点击工具:

下载这个插件,下载完后的话我们点击下运行
之后再次启动就运行成功了,之后我们可以利用分离页面,来进行调试代码

可能有些同学没下载,根据引导来下载就行了,下载完后设定启动路经济课:

搞定完后来进行启动即可:

第一次启动的时候可能启动失败需要打开服务端口:

效果如图:

3、03-pages.json 和 tarBar 案例

主要效果体现在页面跳转,以及说顶部导航栏颜色等效果,PS:图标属于静态资源要丢到static里面

那我们来到pages.json当中来进行修改:

修改后的效果,另外的话 globalStyle 就是全局风格,可以应用在所有的页面当中,如果说我们想要修改标题“首页”二字的颜色,只需要更改 navigationBarTextStyle 这个项目就行(目前只支持 white 和 black

接下来的话我们要创建新的页面:

创建之后也会发现软件已经为我们配置好了 pages.json 的相关内容:

接下来的话我们就要来配置底部的导航栏,这样配置即可:

{
	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
		{
			"path": "pages/index/index",
			"style": {
				"navigationBarTitleText": "首页"
			}
		},
		{
			"path" : "pages/my/my",
			"style" : 
			{
				"navigationBarTitleText" : "我的"
			}
		}
	],
	"globalStyle": {
		"navigationBarTextStyle": "white",
		"navigationBarTitleText": "uni-app",
		"navigationBarBackgroundColor": "#1cac9d",
		"backgroundColor": "#F8F8F8"
	},
	"tabBar": {
		"list": [
			{
				"pagePath": "pages/index/index", // page的路经
				"text": "首页", // 显示的名称
				"iconPath": "/static/tabs/home_default.png", // 未选中时显示的ICON图标
				"selectedIconPath": "/static/tabs/home_selected.png" // 选中时显示的ICON图标
			},
			{
				"pagePath": "pages/my/my",
				"text": "我的",
				"iconPath": "/static/tabs/user_default.png",
				"selectedIconPath": "/static/tabs/user_selected.png"
			}
		]
	},
	"uniIdRouter": {}
}

同时的话你会发现图标是有根据点击后进行更改颜色的,但是文字部分没有变色

添加这个即可:

另外的话大家如果说想在手机上看会发现微信开发者工具这里预览是灰色的,这边的话我们需要配置AppID:
这个是微信小程序开发的页面
获取AppID就在配置指南当中就可以获取,设置完后返回按预览就可以了

上小结:

4、04-uni-app和原生小程序开发区别

示例代码:

<template>
	<swiper class="banner" indicator-dots circular :autoplay="false"> <!-- // indicator-dots 就是是否显示图标 circular就是能不能滑动 autoplay是自动播放 -->
		<swiper-item v-for="item in pictures" :key="item.id">
			<image @tap="onPreviewImage(item.url)" :src="item.url"></image>
		</swiper-item>	
	</swiper>
</template>

<script>
	export default {
		data() {
			return {
				title: 'Hello uni-app',
				pictures: [
					{ id: "1", url: "https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/goods_preview_1.jpg"},
					{ id: "2", url: "https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/goods_preview_2.jpg"},
					{ id: "3", url: "https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/goods_preview_3.jpg"},
					{ id: "4", url: "https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/goods_preview_4.jpg"},
					{ id: "5", url: "https://pcapi-xiaotuxian-front-devtest.itheima.net/miniapp/uploads/goods_preview_5.jpg"},
				]
			}
		},
		onLoad() {

		},
		methods: {
			onPreviewImage(url){ // 设置点击图片预览
				uni.previewImage({
					urls: this.pictures.map(v=>v.url),
					current: url
				})
			}

		}
	}
</script>

<style> /* 设置图片大小 */
	.banner image{
		width: 750rpx;
		height: 750rpx;
	}
</style>

效果展示:

indicator-dots的作用

温馨提示:调用接口能力,建议前缀wX替换为uni,养成好习惯,这样支持多端开发。

就是这边 可以写成 uni 也可以写成 wx,建议写成uni,因为转换成微信开发者工具会自动转换格式的!

5、05-通过命令行方式安装uni-app

创建命令行有什么好处,就在于你不想用HBuilderX来创建项目的话可以换成其他的编译器
具体的安装流程

其他的东西直接跳过了,因为我想用HBuilderX(实际上我喜欢WebStorm)。大家可以点击视频链接查看详细步骤:点我跳转

6、用VSCode开发uni-app项目

我具体展示一下要下载哪三个VSCode插件:

三个插件安装完后基本能实现我们在微信小程序上的开发

另外多嘴一句,在WebStorm当中可能适配性不好

如果想要使用WebStorm搞的话还需要折腾一下,所以我换成VSCode的了,回过来我们的VsCode当中:
首先的话我们介绍的第一个插件uni-create-view 的主要作用就是可以直接创建uniapp页面
然后的话我们第二个插件uni-helper就是用于显示提示
第三个插件uniapp小程序扩展主要是能够显示微信官方文档的插件
第三个插件安装完后的效果

但是的话现在还没结束,因为我们现在还没有完成对TS的校验:

故意写错是没有报错的,那我们现在来进行设置相关的内容:

首先的话在我们的终端输入以下两个命令:

npm install -g pnpm
pnpm i -D @types/wechat-miniprogram @uni-helper/uni-app-types

然后如果说你找不到你的tsconfig 和 package 两个配置文件夹的话你可以重新git下来:

git clone -b vite-ts https://gitee.com/dcloud/uni-preset-vue.git uni-app-project

更改tsconfig.json的内容:

{
  "extends": "@vue/tsconfig/tsconfig.json",
  "compilerOptions": {
    "ignoreDeprecations": "5.0",
    "sourceMap": true,
    "verbatimModuleSyntax": true,
    "baseUrl": ".",
    "paths": {
      "@/*": ["./src/*"]
    },
    "lib": ["esnext", "dom"],
    "types": [
      "@dcloudio/types",
      "@types/wechat-miniprogram",
      "@uni-helper/uni-app-types"
    ]
  },
  "vueCompilerOptions": {
    "nativeTags": ["block", "component", "template", "slot"]
  },
  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
}

设置关于manifest.json的文件关联:

也给pages.json 添加下 不然一直报错

7、07-拉取小兔鲜儿项目模版代码

直接 Git 直接拉取镜像下来:

git clone http://git.itcast.cn/heimaqianduan/erabbit-uni-app-vue3-ts.git heima-shop
用VSCode打开之后,填写下我们的AppID,在终端来到文件输入
pnpm install

然后运行

pnpm dev:mp-weixin

最后我们要到微信开发者工具来导入内容:

开发者工具就会加载我们的代码

8、基础架构

➀安装uni-ui组件库

根据官网的步骤来:https://uniapp.dcloud.net.cn/component/uniui/quickstart.html

首先在终端输入以下命令来下载uni-ui:

pnpm i @dcloudio/uni-ui

接下来的话按照官方的指示,我们还需要配置一下easycom

  // 组件自动引入规则
  "easycom": {
    "autoscan": true,
    "custom": {
      // uni-ui 规则如下配置
      "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"
    }
  },
丢这里就可以了,给大家讲一下这一行:
"^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"

^开头的就是指uni开头的东西,然后(.*)就是匹配uni-后面的所有东西直接把后面的$1替换掉

就可以一口气直接把这些类导入进去,那我们随便来找一个组件来导入 试试看能不能使用:
成功了,但是你发现当你把鼠标放在标签上并没有弹出相关的声明文件

不过好消息是,社区的小伙伴开发出来一个uni-helper/uni-ui-types方便我们能够理解标签的意思,那如何安装呢?终端输入以下命令来安装:

pnpm i -D @uni-helper/uni-ui-types
在tsconfig添加类型声明

上小结:

➁小程序端Pinia持久化

什么叫做Pinia持久化呢?Pinia 是 Vue 3(包括 UniApp)官方推荐的状态管理库,所谓 持久化(Persistence) 就是让你在刷新页面、重新打开小程序时,数据不会丢失,还能自动从本地恢复回来。

来到目录来进行配置:src/stores/modules/member.ts

persist:{
      storage: { //getItem和 setItem是两个基本的数据
        getItem: (key) => {
          return uni.getStorageSync(key);
        },
        setItem: (key, value) => {
          return uni.setStorageSync(key, value);
        },
      }
    }

黑马程序员这边已经配置好了,只额外说了下这个persist的配置

保存完后你也会发现这边出现了保存的信息
问了下AI 差不多就是这个意思

➂请求和上传文件截拦器

评论

  1. Windows Edge 142.0.0.0
    10 小时前
    2025-11-07 21:02:03

    小程序开发吗?厉害

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇