💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
一、项目配置 开发层级结构: ![](https://img.kancloud.cn/dd/51/dd51d69e461038effabf439fd6c6bea0_465x429.png) 左侧是基础开发,右侧是uniapp开发。经过对比,我们只需要掌握了vue框架就可以直接开发,通过uniapp运行到微信开发者工具即可自动编译成微信小程序基础开发层级。 其中manifest.json是对uniapp项目进行配置的文件,在微信小程序项目中我们要配置两点: 1.基础配置获取uniapp标识。 通过HBuilder账号登陆即可点击按钮随机获取,强制要求。 ![](https://img.kancloud.cn/f5/1d/f51da118c3ccd1ebf48c4ab1b6c860b6_1474x470.png) 2.微信小程序配置AppID。 微信小程序AppID,通过微信公众平台登录你注册的小程序账号,从开发设置中找到。 ![](https://img.kancloud.cn/ec/94/ec9470e571b0832a6de008ea1dfdd032_876x471.png) 设置之后项目才可上传到微信小程序平台: ![](https://img.kancloud.cn/3b/9d/3b9dc38b2a8089d41b8d91ac9cb8aadd_1554x905.png) 以上都配置完成后,就可以进行页面制作了。在HBuilder每保存一次,都会进行自动编译。 ![](https://img.kancloud.cn/7c/7c/7c7ce4aac527a2c7a28055689b37984c_1039x183.png) 同时就可以在微信开发者工具实时查看页面变化: ![](https://img.kancloud.cn/a9/a2/a9a2d38db75cf0d8e9567626e18b6023_1554x905.png) 二、编辑页面 直接使用vue单页面组件进行页面开发,如果大家没有接触过Vue,可以到我往期文章参考一下: 技能学习:学习使用php(tp6框架) + vue.js,开发前端全栈网站-1.工具和本地环境https://blog.csdn.net/m0_51592186/article/details/119379014 —— 技能学习:学习使用golang(gin框架) + vue.js,开发前端全栈网站-1.工具和本地环境https://blog.csdn.net/m0_51592186/article/details/118928189 —— 技能学习:学习使用Node.js + Vue.js,开发前端全栈网站-1.工具和本地环境https://blog.csdn.net/m0_51592186/article/details/116045013 与以往记录过程不同,之前都是直接完成一个页面的前后端所有操作,这次先完成所有前端静态页面的搭建,后期引入后端接口。 1.新建页面 所有页面都在pages中,以往在微信小程序基础开发过程中,我们多数新建页面的方法是直接在app.json中添加新页面路径,然后自动生成新页面的文件。 但在HBuilderX中,我们直接在pages页面中新建页面即可完成json和文件的新建: ![](https://img.kancloud.cn/6b/73/6b73aaa3469b769afbc7b58c8c8d36c1_628x267.png) 创建一个活动页面,我喜欢用scss进行样式设置,不说变量的使用,单单从选择器层级这一方面就够我用的了。完成模板选择后点击创建: ![](https://img.kancloud.cn/dc/04/dc04f60a000bfbbe702eaeb98b888806_628x700.png) 如果大家对sass框架(css框架)感兴趣,可以看我往期文章: 技能学习:学习使用Node.js + Vue.js,开发前端全栈网站-13-1.使用sass工具搭建前台web端页面https://blog.csdn.net/m0_51592186/article/details/117250811 —— 此文章中包含了sass的安装等内容,在HBuilderX新建的uniapp项目中,已经自动安装了sass工具,直接看下sass使用方法即可。 sass只是一个工具,可有可无。 创建完页面后,活动页面已经创建完成。同时page.json中也自动生成了该页面的路径,比较方便: ![](https://img.kancloud.cn/43/3f/433f4839ace84aac3c398de123588605_1355x768.png) 以同样的方法创建“商城”和“我的”页面,为大多数小程序的底部导航tabbar做准备。 ![](https://img.kancloud.cn/03/c4/03c4ad2022969d096c69b0e9b1808776_763x615.png) 2.设置底部导航tabbar 在static文件夹新建一个文件夹,准备放tabbar的图标,我起名为tabbar-icon: ![](https://img.kancloud.cn/0a/f9/0af91ce31d95d4725f7b099134a10b24_223x421.png) 右键这个文件夹-在外部资源管理器中打开,去阿里图标找一些对应四个页面的图标: ![](https://img.kancloud.cn/0b/cd/0bcdfabf021bb5c8f1110347d6873cba_790x341.png) 在page.json中设置tabbar: ``` "tabBar": { "color": "#7A7E83", // 字体选中前颜色 "selectedColor": "#e7a924", // 字体选中颜色 "borderStyle": "black", // 导航栏边框颜色 "backgroundColor": "#ffffff", // 导航栏背景颜色 "list": [{ "pagePath": "pages/index/index", // 页面路径 "iconPath": "static/tabbar-icon/index.png", // 选中前icon "selectedIconPath": "static/tabbar-icon/index_select.png", // 选中后icon "text": "首页" }, { "pagePath": "pages/activity/activity", "iconPath": "static/tabbar-icon/activity.png", "selectedIconPath": "static/tabbar-icon/activity_select.png", "text": "活动" }, { "pagePath": "pages/store/store", "iconPath": "static/tabbar-icon/store.png", "selectedIconPath": "static/tabbar-icon/store_select.png", "text": "商城" }, { "pagePath": "pages/user/user", "iconPath": "static/tabbar-icon/user.png", "selectedIconPath": "static/tabbar-icon/user_select.png", "text": "我的" }] } ``` ![](https://img.kancloud.cn/e9/9e/e99e60fcfcd59f76089ee5a06357b8e2_840x504.png) 此时可观察页面变化,点击导航按钮测试。如果页面没有动,检查下icon路径和页面路径等设置是否正确: ![](https://img.kancloud.cn/12/a8/12a8dc526080eb977645e10080ac0b80_372x782.png) 此时就可以在各个页面自由发挥了。 3.全局样式设置 一张图就能大概理解的内容,就不多bb了: ![](https://img.kancloud.cn/00/53/0053927527e80e27c8da13dd59d205ba_1474x800.png) 另外,关于其他样式也可以到uniapp官网进行查询,全局样式设置链接[https://uniapp.dcloud.io/collocation/pages.html#globalstyle](https://uniapp.dcloud.io/collocation/pages.html#globalstyle): ![](https://img.kancloud.cn/e9/9d/e99d54d8402c11aa6d95b9e231d522e9_1920x824.png) 4.界面设置 以下拉刷新为例,我们在首页加入下拉刷新功能。 ``` "enablePullDownRefresh": true ``` ![](https://img.kancloud.cn/d2/0f/d20f1529c789f6050a5e091ac11d7415_1083x548.png) 此时在首页下拉页面就可以看到刷新样式,同时这里的背景颜色就是上面全局样式中的backgroundColor样式的颜色: ![](https://img.kancloud.cn/51/c1/51c13e5c46e582fb7cb112019bfc0c81_386x793.png) 接下来在首页设置下拉操作后运行的js方法: ``` onPullDownRefresh() { console.log('刷新页面'); setTimeout(function () { uni.stopPullDownRefresh(); }, 1000); }, // 解释:onPullDownRefresh()在进行下拉操作时执行其中方法: // 1.日志中显示“刷新页面”四个字(可以替换成我们想要进行的操作) // 2.等待1秒后进行关闭下拉样式的方法stopPullDownRefresh() ``` 放在首页index.vue中js部分: ![](https://img.kancloud.cn/d3/54/d35403f48fd92ed8221d87095fda6147_891x527.png) 测试,没问题: ![](https://img.kancloud.cn/8e/ef/8eef5b044b2fc0111a568692430fed35_1149x1021.png) 最后,如何在不下拉的情况下设置下拉刷新? ``` uni.startPullDownRefresh() ``` 比如某些数据在更新后页面需要刷新才可以显示,但在用户体验上,这种情况不该让用户自行刷新,所以我们要自动刷新这个页面。 这是我们只需要封装一个方法,调用上边这个uni封装好的接口,进行下拉刷新。 ![](https://img.kancloud.cn/1f/01/1f01fcbc4896cf1a5770a5b7f8de4e4d_1007x844.png) 以上这个过程,就是点击Uniapp这个图片,此时触发刷新方法,然后进行操作的过程,与用户下拉刷新的操作结果相同。 测试,没问题: ![](https://img.kancloud.cn/c4/1b/c41b906e6ea8799dfbebe53a60e309d8_827x806.png) 到此,以上就是小程序页面制作的基础方法。我先继续往下做,定期更新我遇到的工具和效果等问题。