小程序
小游戏
企业微信
微信支付
扫描小程序码分享
请问下Component的properties的类型如何用ts类型定义呢?
Component<any,any,any>
这泛型定义的不知道怎么搞,一脸懵逼。
组件传参的定义 真的是太麻烦了,不支持自定义类型吗? 有没有用ts的兄弟指导下。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
https://github.com/wechat-miniprogram/api-typings/issues/133#:~:text=%E5%B7%B2%E7%BB%8F%E5%9C%A8%E6%96%B0%E7%89%88%E6%9C%AC%E9%87%8C%E5%8A%A0%E4%B8%8A%E4%BA%86%EF%BC%8C%E7%94%A8%E4%BE%8B%EF%BC%9Ahttps%3A//github.com/wechat%2Dminiprogram/api%2Dtypings/blob/1ae404c/test/issue.test.ts%23L277%2DL307
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
如果要细分自定义props中的对象里面的属性时,可以在data中进行定义
例如:
import type { GoodsListType } from "../customType"; type IData = { goods_list: GoodsListType, baseResURL: string, } Component({ properties:{ goods_list: Array, }, data:<IData>{ baseResURL: app.globalData.baseResURL, }, methods:{ selectGoods(this:any,index:number){ const goods_list = this.data.goods_list // 解决了这里的报错 const goods_id = goods_list.id // 上面定义了goods_list的类型为GoodsListType } } })
新版本 ts 提供了一个自定义类 TCustomInstanceProperty,手动覆盖下就能实现自定义 prop 了
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
https://github.com/wechat-miniprogram/api-typings/issues/133#:~:text=%E5%B7%B2%E7%BB%8F%E5%9C%A8%E6%96%B0%E7%89%88%E6%9C%AC%E9%87%8C%E5%8A%A0%E4%B8%8A%E4%BA%86%EF%BC%8C%E7%94%A8%E4%BE%8B%EF%BC%9Ahttps%3A//github.com/wechat%2Dminiprogram/api%2Dtypings/blob/1ae404c/test/issue.test.ts%23L277%2DL307
如果要细分自定义props中的对象里面的属性时,可以在data中进行定义
例如:
import type { GoodsListType } from "../customType"; type IData = { goods_list: GoodsListType, baseResURL: string, } Component({ properties:{ goods_list: Array, }, data:<IData>{ baseResURL: app.globalData.baseResURL, }, methods:{ selectGoods(this:any,index:number){ const goods_list = this.data.goods_list // 解决了这里的报错 const goods_id = goods_list.id // 上面定义了goods_list的类型为GoodsListType } } })
新版本 ts 提供了一个自定义类 TCustomInstanceProperty,手动覆盖下就能实现自定义 prop 了