EarthSDK
    正在准备搜索索引...

    函数 defineReactiveProp

    • 用来扩展某个对象的属性,同时配置属性的Changed事件

      类型参数

      • PropType

      参数

      • classObj: { prototype: Object }

        需要扩展的对象

      • propName: string

        扩展对象的属性名字,只能是字符串

      • defaultValue: PropType

        属性的默认值

      • 可选equalsFunc: (a: PropType, b: PropType) => boolean

      返回 void

      
      

      // 示例1,常规示例 export interface KulunFaceModel { showFace: boolean; readonly showFaceChanged: Event<[boolean, boolean]>; } defineReactiveProp(KulunFaceModel, 'showFace', true);

      // 示例2,带数组的比较运算 export interface MkyDeviceModel { position: [number, number, number]; readonly positionChanged: Event<[[number, number, number], [number, number, number]]>; } defineReactiveProp(MkyDeviceModel, 'position', [0, 0, 0], (a, b) => a.every((e, i) => e === b[i]));

      // 示例3,带JSON的比较运算 export interface ProjectConfig { 中心线模型urls: string[]; readonly 中心线模型urlsChanged: Event<[string[], string[]]>; } defineReactiveProp<string[]>(ProjectConfig, '中心线模型urls', [], (a, b) => JSON.stringify(a) === JSON.stringify(b));