参考amp-bind-macro ID以执行表达式

时间:2019-05-02 09:24:54

标签: html expression amp-bind

我正在尝试引用amp-bind-macro表达式(我需要根据用户输入使用不同的amp-bind-expressions)。

问题是,当我尝试引用它们时,它不执行该表达式。在控制台中显示语法错误。不管我尝试什么,我都无法正常工作。

这是我要实现的代码示例:

<amp-bind-macro id="exampleMacro" arguments="input" expression="8*input"></amp-bind-macro>

<amp-state id="exampleJson">
<script type="application/json">
 { "test": "exampleMacro" }
</script>
</amp-state>

<span [text]="[exampleJson.test](input)">0.0</span>

我尝试过:

<span [text]="exampleJson.test(input)">0.0</span>
<span [text]="[exampleJson.test][(input)]">0.0</span>

任何创意团队? AMP文档说: “通过从文档的任何位置引用其id属性值,可以像调用函数一样调用宏” https://amp.dev/documentation/components/amp-bind?referrer=ampproject.org#defining-macros-with-amp-bind-macro

所以我本以为可以做到这一点

1 个答案:

答案 0 :(得分:0)

如文档链接中的示例所示,amp-bind-macro在amp-bind表达式中只能由id引用。例如

<span [text]="exampleMacro()">0.0</span>

希望有帮助!