vue3实战:.ts文件中的interface定义与抛出、其他文件的调用方式

vue3实战:.ts文件定义interface、export抛出、其他文件的调用方式

此类应用场景:

  • 常见于vue3 项目在进行数据重构后,二次赋值导致的数据格式校验不匹配问题。
  • 针对此类场景问题,可由此切入,进而解决语法爆红bug.

代码示例:

  • 在citys.ts 文件定义:

    js 复制代码
    // 定义城市对象类型
    interface City {
        city_name: string;
    }
    
    // 定义城市列表对象类型
    export interface CityList {
        idx: string;
        cities: City[];
    }
    
    /** 全国城市列表 */
    export const cityListPO: CityList[] = [
        {
            "idx": "A",
            "cities": [
                {
                    "city_name": "阿坝藏族羌族自治州",
                },
                {
                    "city_name": "阿克苏市",
                },
                ······
            ]
        }
    ];
  • 在 indexList.vue 文件中引用、使用:

    引用方式:

    js 复制代码
    import * as Citys from '@/utils/citys';

    使用定义的类型:【三种使用方式,定义示下】

    js 复制代码
    const acc: Citys.CityList[] = []
    // const acc = [] as Citys.CityList[]
    // const acc = ref<Citys.CityList[]>([])

博主自留地:

  • 案例参考:
    代码明细,请参考本地项目:
    klcsxtxt.sys_uniapp_vue3》小程序端》地区选择功能。

相关推荐
子兮曰5 小时前
把 649 种文件格式塞进一个网页里:一个「文件不出浏览器」的预览器
前端·javascript·后端
paopaokaka_luck8 小时前
基于springboot+vue的智慧家政管理系统(AI问答、 WebSocket实时沟通、ECharts运营分析、订单规则与服务追踪)
java·javascript·spring boot·数据分析·echarts·mybatis
sm_926787058 小时前
RFID 标签打印的技术实现要点与二次开发实践
java·大数据·前端·c++·编辑器
IMPYLH8 小时前
HTML 的 <video> 元素
前端·html
溪语流沙9 小时前
【每天一个CSS | Day19】流光文字与一笔写成的手写签名
前端·javascript·css
逐光者9339 小时前
STM32——SPI 屏 · Flash · 高速
java·前端·stm32
To_OC9 小时前
同样是让 AI 写全栈,为什么别人一句话就够了
前端·前端框架·next.js
CDwenhuohuo9 小时前
electron pc项目打包成桌面端
前端·javascript·electron
前端大斗师10 小时前
「大于 1000」把 1000 元那单也算进去了:我在 Vue3 订单页对了 10 句话
前端·人工智能·typescript·大模型·原力计划
Jmyd012310 小时前
用 Web VR 引擎搭建 3D 虚拟展厅:从素材上云到多端实时渲染的完整数据链路
前端·3d·vr·三维数字化