amp-bind 中的比较运算符

Comparison operators in amp-bind

我正在尝试在 amp 中实现宏,如下所示:

<amp-bind-macro id="isTest" arguments="str" expression="str==='test'" />

但是抛出了这个错误:

amp-bind-macro#isTest.i-amphtml-element.i-amphtml-layout-container.i-amphtml-error %s amp- 
bind: Parsing amp-bind-macro failed. Parse error on line 1:
str==='test'
-----^
Expecting '(', '!', '-', '+', 'NAME', '[', 'STRING', 'NUMBER', 'TRUE', 'FALSE', 'NULL', 
'{', got 'INVALID'​​​

我猜这是因为 AMP 不支持 === 运算符。如果是这样,我怎样才能在任意两个值之间进行这样的比较?

amp-bind expression grammar 确实列出了 ==(但不是 ===)作为支持。因此,这有效:

<amp-bind-macro id="isTest" arguments="str" expression="str=='test'" />

虽然 == 也进行类型转换(例如 '10' == 10 是真的),但这可能不是什么大问题,因为 amp-bind 表达式往往很简单。如果您觉得需要 === 的用例,我建议您打开 an issue 并将其作为反馈提供给 AMP 团队。