当前位置: 首页 > wzjs >正文

大学网站建设图百度查询入口

大学网站建设图,百度查询入口,html动漫网站模板下载,网站首页的文字下拉怎么做黑马程序员前端项目uniapp小兔鲜儿微信小程序项目视频教程,基于Vue3TsPiniauni-app的最新组合技术栈开发的电商业务全流程_哔哩哔哩_bilibili 参考 有代码,还有app、h5页面、小程序的演示 小兔鲜儿-vue3ts-uniapp-一套代码多端部署: 小兔鲜儿-vue3ts-un…

黑马程序员前端项目uniapp小兔鲜儿微信小程序项目视频教程,基于Vue3+Ts+Pinia+uni-app的最新组合技术栈开发的电商业务全流程_哔哩哔哩_bilibili

参考

有代码,还有app、h5页面、小程序的演示

小兔鲜儿-vue3+ts-uniapp-一套代码多端部署: 小兔鲜儿-vue3+ts-uniapp 项目已上线,小程序搜索《小兔鲜儿》即可体验。🎉🎉🎉 <br/> 配套项目接口文档,配套笔记。

接口文档

说明 - 小兔鲜儿-小程序版

创建uni-app项目 

有HbuilderX创建项目和命令行创建项目两种方式

这里要创建uniapp项目,然后使用vscode开发

项目配置

微信小程序appid

安装依赖,运行 

pnpm i安装依赖,多个node_modules文件夹

然后运行pnpm dev:mp-weixin,mp表示mini program,微信小程序

编译完成的结果在dis目录下

打开微信小程序,导入mp-weixin

分离窗口

分离窗口,方便查看

使用uni-create-view插件

安装后进行设置 

配置好后,直接创建uniapp页面 

前一个是页面,后一个是页面路由pages路径名称 

完善ts类型校验

安装最新版本ts类型声明文件 

pnpm i -D miniprogram-api-typings@latest @uni-helper/uni-app-types@latest
// tsconfig.json
{"extends": "@vue/tsconfig/tsconfig.json","compilerOptions": {"sourceMap": true,"baseUrl": ".","paths": {"@/*": ["./src/*"]},"lib": ["esnext", "dom"],// 类型声明文件"types": ["@dcloudio/types", // uni-app API 类型"miniprogram-api-typings", // 原生微信小程序类型"@uni-helper/uni-app-types" // uni-app 组件类型]},// vue 编译器类型,校验标签类型"vueCompilerOptions": {// 原配置 experimentalRuntimeMode 已废弃,请升级 Vue - Official 插件至最新版本"plugins": ["@uni-helper/uni-app-types/volar-plugin"] },"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
}

tsconfig报错

方法一:加上"ignoreDeprecations":"5.0"后重启

在 TypeScript 5.0 及以上版本中,importsNotUsedAsValues 和 preserveValueImports 选项已被弃用,并将在 TypeScript 5.5 中停止支持。取而代之的是使用 verbatimModuleSyntax 选项

如果希望继续使用旧版本的配置,可以在 tsconfig.json 中添加 ignoreDeprecations 选项,使编译器忽略弃用警告

"ignoreDeprecations":"5.0"

方法二:更新@vue/tsconfig 

使用命令查看vue/tsconfig版本

我的版本是0.1.3

pnpm list @vue/tsconfig

升级后重启

pnpm update @vue/tsconfig@^0.7.0

允许pages.json和manifest.json允许注释

在uniapp项目中,允许pages.json和manifest.json允许注释

但是vscode默认严格json 

只有这两个json文件允许注释

值jsonc,表示允许注释

manifest.json中两个值已弃用

两个值已弃用,所以默认false和0 

不用管

安装uni-ui

文档

uni-app官网

pnpm安装

配置easycom完成组件自动导入

开启自动扫描,在components文件夹是否有符合uniapp标准的组件,有就自动导入

但我们通过pnpm包管理器的方式下载,组件在node_modules里

所以这个配置走的是第二个custom正则的规则 

^表示开头,用()包裹.*,表示提取出这个组件的名字,()表示提取,提取的内容会把后面的$1替换

 // 组件自动引入规则"easycom": {// 是否开启自动扫描"autoscan": true,// 以正则方式自定义组件匹配规则"custom": {// uni-ui 规则如下配置"^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue",// 以 Xtx 开头的组件,在 components 文件夹中查找引入(需要重启服务器)"^Xtx(.*)": "@/components/Xtx$1.vue"} 

为uni-ui提供ts类型

网站:  

@uni-helper/uni-types - npm

ts项目,希望类型更加安全 

但是鼠标悬停组件上是unknow

uni-ui开发时使用js,没有升级到ts

官方提供的组件库,并没有对应的类型声明文件

有人为uni-ui提供了配套的类型声明文件 

安装后需要增加类型声明文件 

"@uni-helper/uni-ui-types"

有了这个,我调用函数,就可以结构了 

小程序端pinia持久化 

文档:

配置 | Pinia Plugin Persistedstate

Pinia 用法与 Vue3 项目完全一致,uni-app 项目仅需解决持久化插件兼容性问题

插件默认使用 localStorage 实现持久化,小程序端不兼容,需要替换持久化 API

 安装持久化存储插件

pnpm i pinia-plugin-persistedstate

参考 

请求工具的封装 

拦截器

文档:

uni.addInterceptor(STRING, OBJECT) | uni-app官网

invoke函数会在拦截前触发 


设置请求基地址

如果首选服务器挂了,换成备用服务器,有基地址设置,只需要改一边就可以了

在项目中用到路径也更简洁


添加请求头标识

当前的小兔鲜服务端除了服务于小程序端,也会服务于pc端和app端

后端需要通过标记识别出数据请求的来源


添加token

用户登录后拿到token

流程 

拦截时,就会拿到uni.request()内部传来的参数

可以通过invoke()的形参获取

参数在ts项目中要指定类型,鼠标悬停到request上,得知参数类型

如果request在用的时候,也写上了header,这里写上的参数会覆盖options.header中的内容

因为options.header这里被赋值成新对象

所以,如果有要先保留,再添加特殊标识 

请求函数

封装请求函数,为了在项目中方便发请求,借鉴axios(axios返回值是Promise对象,配合async,await,能更方便地获取到请求成功的数据)

所以封装的请求函数也要求返回Promise对象

uniapp的拦截器没有axios拦截器完善,uniapp的响应拦截器对类型支持并不友好

所以前面的拦截器只完成了请求前的拦截,没有实现响应拦截器

要通过自己封装的请求函数去实现axios响应拦截器做过的业务(响应分为成功、失败)

流程

这里是Promise对象,所以更方便地用async,await去接收数据 


async/await 是建立在 Promise 之上的语法糖 。Promise 是 ES6 引入的异步编程解决方案,用于封装异步操作并获取其成功或失败结果。async 函数会自动返回一个 Promise 对象,await 关键字用于等待 Promise 对象的状态变为已解决(resolved )或已拒绝(rejected ),从而获取相应结果或处理错误

数据
封装抽离后端返回值的类型

后端返回的数据,变的只有result

所以可以封装抽离后端返回值的类型

类型断言 

返回的类型,uniapp中也有默认的联合类型,可以是string、AnyObject、ArrayBuffer

联合类型在这里是任意的对象类型AnyObject,但是有太大了

这里有更精确的类型,我们定义的Data<T>

在联合类型中指定其中一个类型,使用类型断言

获取数据失败

success()只有服务器有响应,都会走到这里面

如果服务器挂了,或者网络出错,才会走到fail()响应失败

如果没有token,但调用了一个需要携带token才能访问的接口,会走到success()响应成功里面。因为服务器有响应,响应的结果只不过是token失败

对于我们也页面中使用,业务理解会有差异


axios中的处理是只有响应状态码是2开头,才会调用resolve()

所以借鉴axios 

text、view标签报红错误提示

参考文档

vscode开发uniapp小程序,text、view标签报红错误提示 | Ayu's Study Blog

使用VSCode搭建UniApp + TS + Vue3 + Vite项目-阿里云开发者社区

我按照文档中说明,在.npmrc文件中增加了两项,再下载依赖,然后重启vscode就成功了 


文章转载自:

http://7gjQmuIg.Lbzgt.cn
http://wg5biaHt.Lbzgt.cn
http://bajDFL26.Lbzgt.cn
http://1EzzlUyg.Lbzgt.cn
http://0Uc60wil.Lbzgt.cn
http://ptRrY6zG.Lbzgt.cn
http://sFoSVDDF.Lbzgt.cn
http://uESWrCx3.Lbzgt.cn
http://JlXD7xWl.Lbzgt.cn
http://p3fVncsp.Lbzgt.cn
http://CecrUUy6.Lbzgt.cn
http://hZJNx0Er.Lbzgt.cn
http://O8HQvGjU.Lbzgt.cn
http://mhbUFuZM.Lbzgt.cn
http://zOP2f2eb.Lbzgt.cn
http://3Fka5hVe.Lbzgt.cn
http://kSGh85Jt.Lbzgt.cn
http://zJseChZS.Lbzgt.cn
http://Ero3CXq8.Lbzgt.cn
http://5kKIOPZD.Lbzgt.cn
http://1kM3gGOc.Lbzgt.cn
http://16ocTApz.Lbzgt.cn
http://KzDd2A1z.Lbzgt.cn
http://jzWp4OP1.Lbzgt.cn
http://XJBTav50.Lbzgt.cn
http://rkn3Grd5.Lbzgt.cn
http://9pGiNk9y.Lbzgt.cn
http://QiNgXz3q.Lbzgt.cn
http://FwkpFi0G.Lbzgt.cn
http://pxP0sM6K.Lbzgt.cn
http://www.dtcms.com/wzjs/740345.html

相关文章:

  • 关于新农村网络建设网站小程序开发公司价格表
  • 网站备案准备资料管理咨询公司起名字
  • 企业网站开发用什么语言写设计公司口号
  • 网站建设 空间选择怎么仿一个复杂的网站
  • 电子商务网站建设是学什么网站地图怎么样做更利于收录
  • 电子商务网站建设也管理高端网站建设信息
  • 运行一个网站的成本免费网站建设报价
  • 舟山建设信息港门户网站劳力士手表网站
  • eclipse用来做网站前端营销网站优化推广
  • 免费个人网站建设报价wordpress cms插件
  • 深圳网站制作建站网站开发提高加载速度
  • 免费网站建设360装修报价单明细表完整 清单
  • 做网站温州学校门户网站建设的优势
  • 现在做网站一般做多宽做智能家居网站
  • 一个人制作网站设计本接单
  • 网站开发费属于研发支出吗wordpress悬浮框
  • 珠海网站建设制作设计新手跨境电商怎么做
  • 淘宝上买的网站模板怎么建设网站wordpress积分插件中文免费
  • 手游传奇网站发布百度seo怎么样优化
  • wordpress文章瀑布流厦门seo传播
  • 创建商务站点的主要工作惠州网站建设方案报价
  • 个人网站如何加入百度联盟建设网站怎么制作
  • 贵阳做网站软件网站开发涉及技术
  • 线上购物网站开发wordpress加载相册慢
  • 专业网站开发费用海口装饰设计网站建设
  • 如何建立像淘宝一样的网站flash网站源码下载
  • 怎么查网站点击量制作小诗集
  • 为什么选用美食做网站主页网站建设流程表
  • 彩票网站怎么做ip管理网页顶部导航栏设计
  • 关于加强政务网站建设的通知微信小程序线上商城怎么申请