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》小程序端》地区选择功能。

相关推荐
wuhen_n16 分钟前
Pinia状态管理原理:从响应式核心到源码实现
前端·javascript·vue.js
陆枫Larry33 分钟前
小程序 scroll-view 设置 padding 右侧不生效?用一层包裹解决
前端
晴殇i1 小时前
CommonJS 与 ES6 模块引入的区别详解
前端·javascript·面试
Selicens1 小时前
git批量删除本地多余分支
前端·git·后端
wuhen_n1 小时前
KeepAlive:组件缓存实现深度解析
前端·javascript·vue.js
前端付豪1 小时前
Nest 项目小实践之图书展示和搜索
前端·node.js·nestjs
wuhen_n1 小时前
Vue Router与响应式系统的集成
前端·javascript·vue.js
Ruihong1 小时前
《VuReact:下一代 Vue 3 -> React 智能编译工具,支持 SFC 与增量迁移》
vue.js
FansUnion1 小时前
用 AI 自动生成壁纸标题、描述和 SEO Slug
javascript
青青家的小灰灰1 小时前
金三银四面试官最想听的 React 答案:虚拟 DOM、Hooks 陷阱与大型列表优化
前端·react.js·面试