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

vue3功能实现

在vue2中,要实现一些方法(增删改查)一般都是写在一起的。如下图所示:

但是在vue3中,实现一个方法需要用到很多文件。

方法定义方法如下:  

export function classSign(phone: string) {return sign_request<Boolean>({url: `sign?phone=${phone}`,method: "get"})
}export function editBlogCount(data: BolgCountData) {return sign_request({url: "blog/blog-info-change",method: "post",data})
}

 

 service文件中定义方法

/** 创建请求方法 */
function createRequest(service: AxiosInstance) {return function <T>(config: AxiosRequestConfig): Promise<T> {const token = getToken()const defaultConfig = {headers: {// 携带 TokenAuthorization: token ? `Bearer ${token}` : undefined,"Content-Type": "application/json"},timeout: 5000,baseURL: "/sign-system",data: {}}// 将默认配置 defaultConfig 和传入的自定义配置 config 进行合并成为 mergeConfigconst mergeConfig = merge(defaultConfig, config)return service(mergeConfig)}
}/** 用于网络请求的实例 */
const service = createService()
/** 用于网络请求的方法 */
export const sign_request = createRequest(service)

post请求中用到的参数在order.ts中定义:

//入参定义
export interface NoSignStudentList {id: stringname: stringblogCount: numberblogAddress: string
}export interface BolgCountData {phone: stringblogCount: number
}//出参定义
export type GetTableResponseData = ApiResponseData<{list: GetTableData[]total: number
}>export type GetNoSignData = ApiResponseData<{noSignStudentListI: NoSignStudentList[]
}>

在vue文件中,首先给按钮绑定点击事件(此处和vue2相同):

 之后在script中定义方法:

 到这里完整的方法就可以实现了,虽然比vue2稍微复杂一点,但是熟练后编写更加方便。

http://www.lryc.cn/news/94864.html

相关文章:

  • 微服务系列文章 之 SpringCloud中遇到的一些bug
  • Linux——权限
  • [英语单词] components;
  • 【观察者模式】 ——每天一点小知识
  • el-ment ui 表格组件table实现列的动态插入功能
  • gitLab修改密码后,sourceTree如何修改密码
  • sop是什么意思
  • 【C#】Kestrel和IIS服务器下的同步与异步配置
  • GoLand导入redis的github包失败
  • Elasticsearch原理剖析
  • 数据在内存中的存储1(C语言进阶)
  • Kubernetes API Server 中启用 pprof 接口
  • Docker 私有仓库 harbor 搭建
  • 工厂方法模式
  • (CentOS 7)nvidia-smi:Failed to initialize NVML: Driver/library version mismatch
  • 呼吸灯——FPGA
  • 群辉用户接入vocechat的方法(附开通GPT机器人)
  • flutter js交互传参
  • 重磅IntelliJ IDEA 2023.2 新版本即将发布,拥抱 AI
  • JavaWeb_SpringCloud微服务_Day1-eureka, ribbon, nacos
  • 数据科学领域常用python库
  • 【Android关键字】startActivityForResult/onActivityResult/setResult方法的使用
  • PyTorch深度学习实战(5)——计算机视觉
  • 遥感目标检测(1)--R3Det
  • 使用 vue3-tel-input电话组件时,为什么通过v-model绑定的默认值无效而 通过:value绑定有效?
  • 【运维工程师学习二】OS系统管理
  • 【前端技巧】CSS常用知识碎片(九)
  • SQL 上升的温度
  • Matlab实现最优化(附上多个完整仿真源码)
  • es下载历史的tar文件