文档
项目简介本项目使用vite + pinia + ts + vue3, 使用的node版本为20.10.0, 推荐使用pnpm安装依赖
本项目源码地址为: https://gitee.com/taozhiqiang/vite_ts_pinia.git 初次搭建, 其中有问题欢迎大家交流与指正, 有好的想法或者不足之处可留言, 看到会回复
部分样式代码及图片借鉴于: https://gitee.com/imsea/Geeker-Admin.git 侵删
API使用axios库, 用类的方式二次封装, 使用了双token实现页面无感刷新, 以及接口参数请求加解密, 加解密使用随机加密秘钥, 每次请求的加解密秘钥是不相同的, 密钥使用非对称加密, 加密之后通过appId传递给后端, 同时生成一个唯一值(nonce)和时间戳(timestamp), 最后把appId, nonce, timestamp以及data数据按顺序拼接, 最后通过md5生成签名
在api文件夹下的index.ts中做了接口统一导出, 使用的时候只需要引用index.ts文件就可直接使用请求
sass样式使用sass, ...
接口
接口123456789interface InfoType { name: string age: number}const info: InfoType = { name: '常威', age: 18}
索引类型123456789101112131415161718192021interface IndexLanguage { [index: number]: string}const frontLanguage: IndexLanguage = { 0: 'html', 1: 'css', 2: 'JavaScript', 2: 'Vue'}interface LanguageYear { [name: string]: number}const languageYear: LanguageYear = { 'C': 1972, ...
类
类的定义12345678910111213141516class P { name: string age: number constructor(naem: string, age: number) { this.name = name this.age = age } play() { console.log(this.name + '在打来福') }}const p = new P('常威', 18)p.play()
类的继承123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657class P { name: string age: number constructor(naem: string, age: number) { this.name = nam ...
TypeScript基本数据类型
TypeScript和JavaScript都有的类型字符串(string)12345// 定义一个变量并指定类型let str1: string// 定义一个变量指定类型并且设置初始值let str2: string = '字符串类型'
数值(number)1234567891011121314// 定义一个变量并指定类型let num1: number// 定义一个变量指定类型并且设置初始值let num2: number = 10// 二进制的写法let num3: number = 0b110// 八进制let num4: number = 0o555// 十六进制let num5: number = 0xf23
布尔值(boolean)12345678// 定义一个变量并指定类型let bool1: boolean// 定义一个变量指定类型并且设置初始值let bool2: boolean = true// 也可以写成表达式bool1 = 20 > 30
数组(Array)123456// 定义数组需要确定数组中存放的类型是什么元素, 最好存放的 ...