阿里云开发uniapp之uni-starter

使用 uni-starter 和 uni - admin 搭建APP(小程序)和后台管理系统,15分钟搞定,开局完成50% ,前后端包括云服务一键搞定(目前免费使用阿里云版本,腾讯云也有免费) 本次我们搭建的项目是APP(uni-app支持多端运行,包括微信小程序、支付宝小程序、安卓App、iOSApp等等)和APP的后台管理系统(适应手机和PC端)。每一个都可以当全栈,只要有编程基础,当然了解vue最好啦我们选择基于uni-app的uni-starter开发app,后台系统选择基于uni-app的uni-admin为什么选uni-starter和uni-admin?uni-starter是一个集成了大量商用项目常见功能的,云端一体应用快速开发基本项目模版。+.................. 阅读详情

一、为什么使用uni-starter

uni-starter是集成商用项目常见功能的、云端一体应用快速开发项目模版。

一个应用有很多通用的功能,比如登录注册、个人中心、设置、权限管理、拦截器、banner... uni-starter将这些功能都已经集成好,另外,uni-starter可以直接在前端调用数据库生成页面,节省了大量的js代码。

此外,uni-starter结合uni-admin给用户提供了用户端和管理端的全套模版,对开发人员来说,节省了大量的开发时间。

二、uni-starter如何使用

1,在HBuilderX中创建项目,选择模版uni-starter,选择阿里云,Vue版本2或3都可以,这里我是用Vue3版本,最后点击创建即可。

如下图所示:

 2.开通云服务
  • 在uniCloud控制台登录,按云厂商要求进行实名认证。
  • 在uniCloud认证通过后,创建一个服务空间给本项目使用。选择阿里云。如下图所示:

3.创建并配置uni-id的配置文件
  • 在目录uniCloud/cloudfunctions/common/uni-config-center/下新建uni-id/config.json
  • 参考文档云端配置config.json的说明完成配置
  • 这里尤为重要,后续登录报错提示:Invalid uni-id config file就是这个文件没有创建或者该文件注释没有删除,又或者该文件内容格式有误,总之就是文件没法生效。下面我附上自己的代码,大家复制粘贴即可正常使用,但AppID和secret等内容还需要各自参照官网来配置。
    {
    	"passwordSecret": [{
    		"type": "sdasd-23",
    		"version": 1
    	}],
    	"passwordStrength": "medium",
    	"tokenSecret": "asd12asd#23",
    	"requestAuthSecret": "",
    	"tokenExpiresIn": 7200,
    	"tokenExpiresThreshold": 3600,
    	"maxTokenLength": 10,
    	"passwordErrorLimit": 6,
    	"passwordErrorRetryTime": 3600,
    	"autoSetInviteCode": false,
    	"forceInviteCode": false,
    	"idCardCertifyLimit": 1,
    	"realNameCertifyLimit": 5,
    	"sensitiveInfoEncryptSecret": "",
    	"frvNeedAlivePhoto": false,
    	"userRegisterDefaultRole": [],
    	"app": {
    		"tokenExpiresIn": 2592000,
    		"tokenExpiresThreshold": 864000,
    		"oauth": {
    
    			"weixin": {
    				"appid": "",
    				"appsecret": ""
    			},
    
    			"qq": {
    				"appid": "",
    				"appsecret": ""
    			},
    			"apple": {
    				"bundleId": ""
    			}
    		}
    	},
    	"web": {
    		"tokenExpiresIn": 7200,
    		"tokenExpiresThreshold": 3600,
    		"oauth": {
    			"weixin-h5": {
    				"appid": "",
    				"appsecret": ""
    			},
    			"weixin-web": {
    				"appid": "",
    				"appsecret": ""
    			}
    		}
    	},
    	"mp-weixin": {
    		"tokenExpiresIn": 259200,
    		"tokenExpiresThreshold": 86400,
    		"oauth": {
    
    			"weixin": {
    				"appid": "",
    				"appsecret": ""
    			}
    		}
    	},
    	"mp-qq": {
    		"tokenExpiresIn": 259200,
    		"tokenExpiresThreshold": 86400,
    		"oauth": {
    
    			"qq": {
    				"appid": "",
    				"appsecret": ""
    			}
    		}
    	},
    	"mp-alipay": {
    		"tokenExpiresIn": 259200,
    		"tokenExpiresThreshold": 86400,
    		"oauth": {
    
    			"alipay": {
    				"appid": "",
    				"privateKey": "",
    				"keyType": "PKCS8"
    			}
    		}
    	},
    	"service": {
    		"sms": {
    			"name": "",
    			"codeExpiresIn": 180,
    			"scene": {
    				"bind-mobile-by-sms": {
    					"templateId": "",
    					"codeExpiresIn": 240
    				}
    			}
    		},
    		"univerify": {
    			"appid": ""
    		}
    	}
    }

    注意:passwordSecret里和type值和tokenSecret值都是自己随意配置的,passwordSecret里和type值一般不随便更改,只改一次,如果后续还需要可以在数组中新增一个对象,把版本号改成2以此类推即可。

4 运行云服务空间初始化向导 

如下图所示步骤

 

 5.根据自己需要,修改uni-pages文件内容

该文件格式如下: 


├─uni_modules                                         存放uni_module规范的插件。
│    ├─其他module
│    └─uni-id-pages
│        ├─uniCloud
│        │    └─cloudfunctions                        云函数目录
│        │        └─uni-id-co                         集成调用uni-id方法的云对象
│        │            ├─common                        公用逻辑
│        │            ├─config                        配置
│        │            │  └─permission.js              调用接口所需的权限配置
│        │            ├─lang                          国际化目录
│        │            ├─lib                           基础功能,不建议修改此目录下文件
│        │            │  ├─third-party                三方平台接口
│        │            │  └─utils                      基础功能
│        │            ├─middleware                    中间件
│        │            └─module                        分模块存放的云对象方法
│        ├─common
│        │    ├─login-page.scss                       登录页面公共样式
│        │    ├─login-page.mixin.js                   登录页面公共mixin文件
│        │    └─loginSuccess.js                       登录成功后执行的文件
│        ├─components
│        │    ├─cloud-image                           uniCloud云存储图片解析组件
│        │    │    └─cloud-image.vue
│        │    ├─uni-id-pages-agreements               同意用户服务协议&隐私政策条款组件
│        │    │    └─uni-id-pages-agreements.vue
│        │    ├─uni-id-pages-avatar                   用户头像组件
│        │    │    └─uni-id-pages-avatar.vue
│        │    ├─uni-id-pages-bind-mobile              通过微信获取手机号码绑定个人资料
│        │    │    └─uni-id-pages-bind-mobile.vue
│        │    ├─uni-id-pages-email-form               邮箱验证码组件
│        │    │    └─uni-id-pages-email-form.vue
│        │    ├─uni-id-pages-fab-login                悬浮的切换登录方式组件
│        │    │    └─uni-id-pages-fab-login.vue
│        │    ├─uni-id-pages-sms-form                 获取短信验证码组件
│        │    │    └─uni-id-pages-sms-form.vue
│        │    └─uni-id-pages-user-profile             获取用户信息组件
│        │        └─uni-id-pages-user-profile.vue
│        ├─pages
│        │    ├─common
│        │    │    └─webview                          用于实现应用内浏览或打开《用户协议和隐私协议》URL链接页面
│        │    │        └─webview.vue
│        │    ├─login                        
│        │    │    ├─login-smscode.vue                短信验证码登录
│        │    │    ├─login-withoutpwd.vue             免密码登录
│        │    │    └─login-withpwd.vue                密码登录
│        │    ├─register                    
│        │    │    ├─register.vue                     通过用户名密码注册账号
│        │    │    ├─register-admin.vue               创建超级管理员
│        │    │    ├─register-by-email.vue            通过邮箱验证码注册账号
│        │    │    └─validator.js                     注册账号页的表单验证规则文件
│        │    ├─retrieve                              
│        │    │    ├─retrieve-by-email.vue            通过邮箱验证码重置密码
│        │    │    └─retrieve.vue					            通过手机验证码重置密码
│        │    └─userinfo
│        │        ├─bind-mobile.vue                   绑定手机号码
│        │        ├─change_pwd.vue                    修改密码
│        │        ├─cropImage.vue                     裁剪图片
│        │        ├─deactivate.vue                    注销账号
│        │        ├─set-pwd.vue                       设置密码
│        │        ├─realname-verify                   实名认证
│        │        └─userinfo.js                       注册账号页的表单验证规则文件
│        ├─static                                     静态资源目录
│        ├─changelog.md                               更新日志
│        ├─config.js                                  uni-id-pages的配置文件
│        ├─init.js                                    初始化文件
│        ├─package.json                               包管理文件
│        └─readme.md                                  插件自述文件

 这里补充细节:

具体看官方文档:简介@intro | uniCloud 

//这是导入云函数,后续直接uniIdCo.即可访问该云函数方法,具体看官网云函数和云对象
const uniIdCo = uniCloud.importObject("uni-id-co", {
					errorOptions: {
						type: 'toast'
					}
				})

此外还有 调用云数据库,使用Vuex等操作,如下:

	const db = uniCloud.database();//这是导入云数据库
6.更多配置 

 如果项目运行出错,请检查manifest.json文件中的配置还有config.json文件中APPID配置是否正确,如果还有问题,查看微信开放平台和微信公众平台中AppID是否有权限。

uni-starter和uni-admin初始化 uni-admin似乎无法直接关联到uni-starter的服务空间,会一直提示需要初始化数据库,所以选择在同一个服务空间初始化数据库后再让uni-admin关联到uni-starter的服务空间下,这样貌似才能够同步用户数据。最新的一次,直接先下载的uni-starter,然后关联到云空间,初始化database,将数据库这些上传到了云空间,新建了uni-id文件夹及其config.json。,这样运行uni-admin竟然没有报任何错误,新建账号也可以和uni-starter互通。 阅读详情

相关推荐

【uniCloud】uni-starter小程序工程三个代码质量问题的解决方法

【uniCloud】uni-starter小程序工程三个代码质量问题的解决方法

学无止境 2645

uni-starter V2.1.4分析备忘录(一)

uni-starter是uniapp的得意之作,与uni-admin一起组成了uni程序的根骨。学习和应用uniapp,当先了解uni-starter。然而uni-starter的版本太多,更新又太快,所以我们只能以当前(2023-8-16)的最新版V2.1.4为例,说明之。

sinat_26699091的博客 658

UniApp跨端开发实战:高效构建多端应用

跨端开发框架如UniApp通过抽象平台差异,实现一次开发多端部署,大幅提升开发效率。其核心原理基于条件编译和统一API层,使代码复用率可达80%以上。在技术价值上,UniApp显著降低开发成本,尤其适合中小型应用快速迭代。典型应用场景包括教育、电商和政务类应用,其中通过rpx单位、条件编译等策略可实现95%的UI一致性。开发过程中需注意性能优化技巧如图片懒加载和分包加载,同时合理配置打包参数如Android证书管理和iOS的bitcode设置。

weixin_30700099的博客 301

uni-starter V2.1.4(三)登录逻辑

现在我们来分析这个uni-starter的核心逻辑,这个核心逻辑当然就是登陆了。这个例子项目的主要功能就是演示如何登录! 一、uniIdRouter自动路由 uniIdRouter 是一个运行在前端的、对前端页面访问权限路由进行控制的方案。大多数应用,都会指定某些页面需要登录才能访问。以往开发者需要写不少代码。现在,只需在项目的 pages.json内配置登录页路径、需要登录才能访问的页面等信息,uni-app框架的路由跳转,会自动在需要登录且客户端登录状态过期或未登录时跳转到登录页面。结合以下代码及注释了

sinat_26699091的博客 1936

Spring Boot与uniapp构建校园二手交易小程序:全栈开发实战

在当今数字化校园建设中,小程序开发已成为连接用户与服务的重要桥梁。其原理基于前后端分离架构,后端通过RESTful API提供数据服务,前端负责交互与渲染,这种模式提升了开发效率和系统可维护性。从技术价值看,采用Spring Boot能快速构建稳定、可扩展的后端服务,而uniapp则实现了“一次开发,多端发布”,显著降低多平台适配成本。在应用场景上,校园二手交易平台典型地融合了用户系统、商品管理和实时通信等模块,对全栈技术能力提出了综合要求。本文聚焦于如何利用Spring Boot和uniapp的组合,高效

weixin_34392435的博客 539

Spring Boot+uniapp校园二手交易小程序全栈开发实战与避坑指南

在构建现代Web应用时,前后端分离架构已成为主流范式。其核心原理在于将前端展示逻辑与后端业务逻辑解耦,通过RESTful API进行数据交互,从而提升开发效率和系统可维护性。这种架构的技术价值在于支持团队并行开发、技术栈灵活选型以及更好的用户体验。在电商、社交等应用场景中,它尤其重要。本文聚焦于一个典型的校园二手交易平台,深入探讨了如何运用Spring Boot后端框架与uniapp前端框架实现这一架构。文中详细解析了用户认证、商品管理、即时通讯等核心模块的实现,并针对多图上传、订单并发等常见技术难点提供了

weixin_34006468的博客 362

uniapp之uni-starter小程序多端研发框架搭建与项目实践

随着移动互联网的飞速发展,无数移动APP琳琅满目;在移动App的发展的基础上,衍生了小程序、轻应用技术,它随时可用,但又无需安装卸载。uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序等多个平台。AIPHD科技文教专注于科技文教,基于uni-app,研发了AIPHD英语、AI智能古诗、AIPHD科技心理等具有独立功能的APP产品矩阵,同时将AIMANT星球作为情感辅助。

JINGWHALE 3938

Spring Boot + uni-app 构建校园二手交易平台:全栈开发实战解析

在当今的互联网应用开发中,微服务架构与跨平台开发已成为主流技术范式。Spring Boot 作为 Java 领域构建独立、生产级微服务的首选框架,以其“约定大于配置”的理念,通过内嵌服务器和自动配置,极大地简化了后端 RESTful API 的开发与部署流程。uni-app 则基于 Vue.js 生态,凭借其“一次开发,多端发布”的跨平台能力,成为高效构建小程序、H5及App前端的有力工具。这两项技术的结合,为快速实现一个功能完整、体验流畅的商业级应用提供了坚实的技术底座,尤其适用于校园二手交易这类需要快速

weixin_30595035的博客 366

uni-starter创建App项目最全流程(日后还有其他功能会不断更新)

关于使用uni-starter创建App的流程

GLimerence的博客 1886

SpringBoot+uniapp多端商城实战:支付回调与状态机避坑指南

在电商系统开发中,后端框架与跨端方案的选型直接影响项目上线效率与维护成本。SpringBoot作为Java生态的主流框架,以其约定优于配置的特性简化了服务端开发;uniapp则通过Vue语法实现一套代码编译到多端,覆盖微信小程序、H5与App。理解订单状态机、支付回调幂等、库存扣减等核心原理,是构建高可用交易链路的关键。以商城项目实践为例,详细解析SpringBoot 2.7.x与uniapp的选型逻辑、前后端联调、Docker部署及常见坑点(如SpringBoot版本兼容、uniapp本地打包SDK版本匹

weixin_34258838的博客 313

家政预约小程序源码实战:从需求分析到部署上线全流程

预约制服务是本地生活数字化的重要形态,尤其在家政保洁这类强时间属性的场景中,系统设计直接决定用户体验。本文从清洁服务预约的真实痛点切入,讲解如何构建一个覆盖用户端、保洁端、管理后台的完整闭环。技术实现上以前端uniapp跨端方案和后端Spring Boot为核心,深入拆解微信登录、地图选点、支付回调幂等、时段库存防超卖、订单状态机等关键链路的设计原理。源码不仅适用于家政行业,也可复用到上门洗车、家电维修等同类预约服务,是理解企业级小程序全栈开发的工程实践参考。

weixin_30386713的博客 379

MatrAIx_Persona_1M许可证完整指南:7个上游来源版权与合规红线,商用前必看

MatrAIx Persona 1M 是一个包含 999,847 个人格画像(Persona)的开源数据集,每条画像由 1,290 个分类属性描述。本文一次性讲清它的"仅限非商业研究"许可证、7 个上游数据源的版权条款与合规红线,帮你在商用前快速判断使用边界,避免踩雷。 ## 数据集速览:先搞清楚你在用什么 MatrAIx Persona 1M 的构成是理解许可证的前提——**不同来源的数据,

gitblog_01067的博客 157

BACnet/IP BBMD跨网段通信深度解析与最佳实践

本文介绍了在BACnet/IP网络中通过BBMD实现跨子网设备通信的关键配置方法。重点阐述了广播分发表(BDT)中掩码设置的重要性:使用子网掩码(255.255.255.0)会导致路由器拦截广播消息,而必须采用主机掩码(255.255.255.255)才能启用单播隧道机制,使BACnet广播消息封装为可路由的单播UDP包。文章详细说明了BDT条目的正确配置格式、BIP广播地址的作用,并提供了验证步骤,强调在跨网段场景中,正确设置掩码是确保设备发现和通信成功的关键因素。

零一架构师的专栏 1536

uniapp发布到微信小程序:分包、删减代码全过程

hbuilderX创建的uniapp项目,分包压缩代码上传到微信小程序 分包压缩代码全过程

weixin_45426939的博客 6593

Silvaco 学习笔记——物理模型:载流子产生复合模型

对载流子的复合机制进行总结

reactortiger的博客 1万+

篮球比赛24秒计时器改造指南:用Multisim实现可调式倒计时系统

本文详细介绍了如何使用Multisim软件改造篮球比赛24秒计时器,实现可调式倒计时系统。从脉冲信号发生器到声光报警模块,提供了完整的电路设计方案和调试技巧,帮助开发者快速掌握数字电路设计的核心原理,提升体育电子设备开发效率。

wood5的博客 211

SpringBoot+Uniapp医院挂号小程序系统实战:从设计到部署全解析

在移动互联网与智慧医疗深度融合的背景下,医院挂号系统的数字化需求日益增长,而小程序因其轻量便捷成为患者服务的重要入口。跨端开发框架与成熟后端技术的组合,为这类业务系统提供了高效落地方案。Uniapp作为基于Vue语法的跨端框架,一套代码可同时发布到微信小程序、H5与App,大幅降低多端适配成本;SpringBoot则凭借自动配置、丰富生态和广泛就业认可度,成为后端服务的主流选择。两者通过RESTful API协同,可完整覆盖从科室查询、医生排班、号源管理到在线支付的核心业务链路。本文围绕医院挂号小程序项目,

weixin_34034261的博客 216

NeuralKG的安装及简单demo使用(浙江大学开源知识图谱表示学习工具)

记录NeuralKG的安装和使用,以及解决windows系统下的运行demo.py出现的问题。

m0_46621271的博客 1398

使用uniCloud开发客户端及后台管理如何共用一个服务空间?不覆盖云函数及schema表结构

两个项目共用一个服务空间,通过不同类型的关联服务空间,减少后期上传云端时候出现的云函数、云对象、schema表结构重名覆盖的问题。

嗨,大家好,我是爱搞知识的咸虾米 937

YOLOv8剪枝 l1剪枝测试精度仅掉0.8个点,速度提高10.7fps!

文章摘要: 本文提出了一种基于组归一化的重要性评分方法GroupNormImportance,用于神经网络剪枝中的通道选择。该方法支持多种变体,包括标准L1范数、组L1范数和BN缩放因子等计算方式。核心实现包括三个关键部分:1)支持p范数计算(默认为L2);2)提供7种组重要性归约方法(如均值、最大值等);3)提供8种归一化方案(包括标准化、高斯化、LAMP等)。该方法输入一个剪枝组,输出各通道的重要性分数,通过依赖图可实现结构化剪枝。实验对比图展示了剪枝前后的效果差异,验证了该方法的有效性。

FJN110的博客 397

YOLO11涨点优化:注意力魔改 | 新颖的多尺度卷积注意力(MSCA),即插即用,助力小目标检测

多尺度卷积注意力(MSCA),有效地提取上下文信息,新颖度高,创新十足。

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 6316

uniapp+SpringBoot代驾小程序系统设计与实现要点解析

跨端开发框架与后端微服务是当前移动应用开发的主流组合,其中uniapp凭借一套代码多端编译的优势,成为微信小程序、App、H5快速落地的常用方案;而SpringBoot作为Java生态的成熟框架,为业务系统提供了稳定可靠的后端支撑。在代驾服务这类实时性要求高的场景中,如何实现司机定位、订单分发、支付对账与状态机流转,是开发者面临的核心挑战。本文从技术选型出发,剖析了数据库设计、微信登录、司乘匹配、微信支付回调等关键环节的工程实践,并整理了常见踩坑点与部署优化建议,帮助读者理解从单机原型到商业级代驾系统的完整

weixin_34166847的博客 282

S/4HANA Private Cloud 与 On-Premise 的 Key User Custom Fields 运输与升级避坑指南

本文探讨了SAP S/4HANA Cloud Private Edition和On-Premise系统中Key User Custom Fields的管理要点。文章指出,Custom Fields涉及元数据生成、对象一致性、传输治理等完整链路,操作不当会导致字段丢失或升级失败。关键建议包括:使用ATO Fiori App管理扩展项与传输绑定,配置正确的job user权限,避免在多系统并行开发同一字段。特别强调升级时需执行CFD_REGENERATE_IN_ONPREMISE报表,并通过标准传输机制推进变更

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 195

SpringBoot校园二手平台开发与优化实践

SpringBoot作为当下主流的Java开发框架,通过自动配置和starter机制显著提升了开发效率。在电商系统开发中,结合MyBatis-Plus等组件可以快速构建高可用的交易平台。校园二手交易场景具有用户集中、物流成本低等特点,基于SpringBoot的技术方案能有效解决资源错配问题。通过合理的数据库设计(如DECIMAL类型处理金额、组合索引优化查询)和轻量级WebSocket通信,实现了包含商品发布、即时通讯、信用体系等核心功能的平台。项目中采用的HanLP分词智能匹配、多级缓存策略等技术,为同类

weixin_34088583的博客 308

基于RK3588与昇腾310B的异构K8s集群部署与NPU统一调度实战

本文介绍了基于RK3588与昇腾310B的异构K8s集群部署方案,通过HAMi+Volcano实现NPU统一调度。方案包含硬件配置、操作系统准备(银河麒麟/欧拉)、容器运行时部署及K8s集群搭建等关键步骤,支持多厂商NPU设备的统一抽象和精细化切分,为边缘AI计算提供高效资源管理能力。

huanghm88的专栏 280

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

SpringBoot2+Vue3全栈电商系统开发实践

现代Web开发中,前后端分离架构已成为主流技术方案。SpringBoot作为Java生态的微服务框架,通过自动配置和起步依赖极大提升了开发效率,配合MyBatis-Plus可实现高效数据访问。Vue3作为前端主流框架,其组合式API和TypeScript支持为复杂应用开发提供了更好的代码组织方式。在电商系统这类典型应用场景中,这种技术组合能有效支撑商品管理、订单处理等核心业务模块,其中Redis缓存和MySQL8.0的窗口函数等特性对性能提升尤为关键。通过容器化部署和Prometheus监控等DevOps实

weixin_34372728的博客 354

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

上一篇: Vue路由缓存问题
下一篇: uniapp创建微信小程序常见问题
谭梦寻
博客等级 码龄5年 937粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值