001_
001_
  • 发布:2020-01-21 16:37
  • 更新:2020-01-21 16:52
  • 阅读:976

typescript 类中的get属性 在微信小程序不能渲染出来

分类:uni-app
export default class Order {  
   /**  
     * 状态名称  
     */  
    public get statueName(): string {  
        let names = ["未派送", "已派送"];  
        if (this.statue < 0 || this.statue >= names.length) {  
            return "";  
        }  
        return names[this.statue];  
    }  

}

我在class 里面定义了一个get属性 ,但是在进行vue渲染的时候,渲染结果为undefined,而我打包为H5,可以在电脑上看到渲染效果的

环境为:cli 创建的项目 微信小程序端

2020-01-21 16:37 负责人:无 分享
已邀请:
001_

001_ (作者)

@Component({  
  components: { uniList, uniListItem }  
})  
export default class Index extends Vue {  
  orders: Array<IOrder> = [];  

  created() {  
    var response = [  
      {  
        no: "DYM201909010001",  
        statue: 0,  
        createTime: "2019-09-01 10:01:01",  
        updateTime: "2019-09-01 10:01:01"  
      },  
      {  
        no: "DYM201909010002",  
        statue: 1,  
        createTime: "2019-09-01 10:01:01",  
        updateTime: "2019-09-02 11:11:11"  
      }  
    ];  

    this.orders = response;  
  }  

  get orderList() {  
    return this.orders.map(o => {  
      return {  
        ...o,  
        get statueName(): string {  
          let names = ["未派送", "已派送"];  
          if (this.statue < 0 || this.statue >= names.length) {  
            return "";  
          }  
          return names[this.statue];  
        }  
      };  
    });  
  }  
}

如果我在vue模板这样写,倒是可以渲染出来

该问题目前已经被锁定, 无法添加新回复