Elvis运算符,具有角度2的连字符属性

时间:2016-03-27 02:46:16

标签: angular angular-template

如何在angular2模板中访问带连字符的属性时使用elvis运算符

http://plnkr.co/edit/z3Wqn7EScgxcAhrFJWjv?p=preview

//our root app component
import {Component} from 'angular2/core'

@Component({
  selector: 'my-app',
  providers: [],
  template: `
    <div>
      <h2>Hello {{name}}</h2>
     {{asyncObj1?.theprop}}
     {{asyncObj2?['the-prop']}} <!-- this throws error -->
    </div>
  `,
  directives: []
})
export class App {
  constructor() {

    setTimeout(function(){
      this.asyncObj1 = {
      'theprop': 'value'
    } 
      this.asyncObj2 = {
      'the-prop': 'async value'
    }  
    }, 2000) 

  }
}

1 个答案:

答案 0 :(得分:1)

目前看来你似乎不会,因为它似乎没有添加对索引器表示法的支持。

这已添加到this拉取请求中的Angular 2,因为Typescript中的问题#16被阻止&#34;或暂停,直到为此类运营商提供标准化的ES支持。

基本上,可以在Angular2中扩展运算符以支持两者。属性语法和索引器语法,但拉取请求似乎没有提供任何迹象表明这是意图,也不是当前支持它,特别是当你查看相关的测试时。