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

wordpress 不显示发布时间安卓优化大师旧版本下载

wordpress 不显示发布时间,安卓优化大师旧版本下载,中国制造网外贸站,从事网站开发学什么专业最近在学Uniapp,到封装请求的时候本来还想用axios,但是看到一些教学视频有更简单的方法, 基于uni的拦截器和Promise封装的请求函数 但是他们是用TS写的,还没学到TS,我就把JS写了,最终也是请求成功 // src/…

最近在学Uniapp,到封装请求的时候本来还想用axios,但是看到一些教学视频有更简单的方法,

基于uni的拦截器和Promise封装的请求函数

但是他们是用TS写的,还没学到TS,我就把JS写了,最终也是请求成功

// src/utils/http.jsimport { useUserStore } from "../stores/modules/user"// 请求基地址
const baseURL = 'https://pcapi-xiaotuxian-front-devtest.itheima.net'// 拦截器配置
const httpInterceptor = {// 拦截前触发invoke(options) {// 1. 非 http 开头需拼接地址if (!options.url.startsWith('http')) {options.url = baseURL + options.url}// 2. 请求超时options.timeout = 10000// 3. 添加小程序端请求头标识options.header = {'source-client': 'miniapp',...options.header,}// 4. 添加 token 请求头标识const userStore = useUserStore()const token = userStore.getToken() ? userStore.getToken() : ''if (token) {options.header.Authorization = token}},
}// 拦截 request 请求
uni.addInterceptor('request', httpInterceptor)
// 拦截 uploadFile 文件上传
uni.addInterceptor('uploadFile', httpInterceptor)export const http = (options) => {return new Promise((resolve, reject) => {uni.request({...options,success(res) {if (res.statusCode >= 200 && res.statusCode < 300){resolve(res.data)} else if ( res.statusCode === 401){const userStore = useUserStore()userStore.removeToken()uni.navigateTo({ url: '/pages/login/login' })reject(res)} else {uni.showToast({icon: 'none',title: (res.data).msg || '请求错误',})reject(res)}},fail(err) {uni.showToast({icon: 'none',title: '请求失败',})reject(err)}})})
}

组件引入http方法进行请求

最后附上TS的写法,感觉其实差不多,只是用TS语法进行了一下泛型的判断

// src/utils/http.ts// 请求基地址
const baseURL = 'https://pcapi-xiaotuxian-front-devtest.itheima.net'// 拦截器配置
const httpInterceptor = {// 拦截前触发invoke(options: UniApp.RequestOptions) {// 1. 非 http 开头需拼接地址if (!options.url.startsWith('http')) {options.url = baseURL + options.url}// 2. 请求超时options.timeout = 10000// 3. 添加小程序端请求头标识options.header = {'source-client': 'miniapp',...options.header,}// 4. 添加 token 请求头标识const memberStore = useMemberStore()const token = memberStore.profile?.tokenif (token) {options.header.Authorization = token}},
}// 拦截 request 请求
uni.addInterceptor('request', httpInterceptor)
// 拦截 uploadFile 文件上传
uni.addInterceptor('uploadFile', httpInterceptor)type Data<T> = {code: stringmsg: stringresult: T
}
// 2.2 添加类型,支持泛型
export const http = <T>(options: UniApp.RequestOptions) => {// 1. 返回 Promise 对象return new Promise<Data<T>>((resolve, reject) => {uni.request({...options,// 响应成功success(res) {// 状态码 2xx,参考 axios 的设计if (res.statusCode >= 200 && res.statusCode < 300) {// 2.1 提取核心数据 res.dataresolve(res.data as Data<T>)} else if (res.statusCode === 401) {// 401错误  -> 清理用户信息,跳转到登录页const memberStore = useMemberStore()memberStore.clearProfile()uni.navigateTo({ url: '/pages/login/login' })reject(res)} else {// 其他错误 -> 根据后端错误信息轻提示uni.showToast({icon: 'none',title: (res.data as Data<T>).msg || '请求错误',})reject(res)}},// 响应失败fail(err) {uni.showToast({icon: 'none',title: '网络错误,换个网络试试',})reject(err)},})})
}

http://www.ds6.com.cn/news/87691.html

相关文章:

  • 网上营销的平台有哪些上海谷歌seo
  • 长沙大型网站设计公司东莞整站优化推广公司找火速
  • 网站做优化效果怎么样什么是新媒体运营
  • 网站建设要会哪些方面全网seo优化电话
  • 有什么做兼职的好的网站吗seo和sem是什么
  • 动态电商网站怎么做百度推广账号注册流程
  • 一个域名怎么用来做多个网站手机怎么创建自己的网站平台
  • 山西网站建设报价单网络营销策划包括哪些内容
  • 重庆企业模板建站信息seo技术 快速网站排名
  • 西双版纳网站建设开发公司猪八戒网接单平台
  • 天津网站seo策划关键词搜索引擎工具
  • 广州做包包的网站网络营销推广的
  • 网站的价值与网站建设的价格建设优化网站
  • 西安品牌网站建设服务商seo优化标题 关键词
  • 会所网站建设哈尔滨网络优化公司有哪些
  • 网站模板的功能win10优化工具
  • 武汉搭建网站北京搜索排名优化
  • 公司付网站会员费科目怎么做网站推广优化公司
  • 个人网站免费制作外贸推广公司
  • 汽车业务网站开发公司seo搜索引擎优化工程师招聘
  • wordpress服务器搭建aso优化{ }贴吧
  • 前程无忧做简历网站外贸营销网站制作公司
  • 建立网站的英文短语google seo 优化
  • 重庆工信部网站自己创建一个网站需要多少钱
  • 科技公司网站开发论文电子商务平台建设
  • 企业网站页面图片网盘资源共享网站
  • 怎么建投票网站深圳网站seo优化公司
  • 做管理信息的网站网络推广网站的方法
  • 视频网站系统开发深圳关键词快速排名
  • 多城市网站开发中国疫情最新消息