引用 amp-bind-macro IDs 来执行表达式

Reference amp-bind-macro IDs to execute expression

我正在尝试引用 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 文档说: "A macro can be invoked like a function by referencing its id attribute value from anywhere in your doc" https://amp.dev/documentation/components/amp-bind?referrer=ampproject.org#defining-macros-with-amp-bind-macro

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

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

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

希望对您有所帮助!