将数据传递到Angular指令的语法

时间:2017-05-15 12:15:46

标签: angular dart angular-dart

我在Angular3 Dart项目中有一个指令:

@Directive(
    selector: "[sample]",
    inputs: const ["text1", "text2"]
)
class SampleDirective implements AfterContentInit {

    ... more code ...

    @Input("text1") String text1 = "Some Text 1";
    @Input("text2") String text2 = "Some Text 2";

}

现在我正在使用这个指令:

<a-component *sample></a-component>

如何传入text1text2字段?

作弊者提到了这个例子:<p *myUnless="myExpression">...</p>,但没有说明myExpression部分应该是什么样子。

这些是我已经尝试过的,但没有一个编译过。

<a-component *sample="text1:'TESTING' "></a-component>
<a-component *sample="text1='TESTING' "></a-component>
<a-component *sample="{text1:'TESTING'}"></a-component>
<a-component *sample="{text1='TESTING'}"></a-component>

知道应该如何构建这些表达式吗?

1 个答案:

答案 0 :(得分:4)

@Input("sampleText1") String text1 = "Some Text 1";

@Input() String sampleText1 = "Some Text 1";

<a-component *sample="text1:'TESTING' "></a-component>

<template sample [sampleText1]="'TESTING'">
  <a-component></a-component>
</template>

<强>更新

需要有一个@Input()与指令的选择器匹配

@Input() 
String sample;

并且需要传递值

<a-component *sample="'someValueForSample' text1:'TESTING' "></a-component>

然后可以添加其他输入的值分配。