我正在尝试使用来自AMP电子邮件的API中的数据填充AMP状态。我们需要从API提供数据,因为它可以同时动态变化。
根据AMP4email documentation,可以从子<script>
元素或包含到远程JSON端点的CORS URL的src
属性填充状态,但不能同时填充两者。
实际上,将src
添加到amp-state
会引发以下验证错误:
AMP playground
The attribute 'src' may not appear in tag 'amp-state (AMP4EMAIL)'
您可以通过将以下代码复制到操场上来对其进行测试。
<!doctype html>
<html ⚡4email>
<head>
<meta charset="utf-8">
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-element="amp-bind" src="https://cdn.ampproject.org/v0/amp-bind-0.1.js"></script>
<style amp4email-boilerplate>body{visibility:hidden}</style>
</head>
<body>
<amp-state id="fruits" src="https://amp.dev/static/samples/json/related_products.json"></amp-state>
</body>
</html>
这是官方验证程序还是文档问题?
答案 0 :(得分:3)
src
当前不支持电子邮件的<amp-state>
属性。来自AMP for Email Supported Components:
<amp-state>
用于定义amp-bind
使用的初始状态。注意:当前不支持
src
属性。
要实现所需的功能,可以使用<amp-list>
从负载中的服务器中提取数据。
编辑:我打开了an issue to track updating the component documentation。
答案 1 :(得分:0)
两者。众所周知,AMP的验证程序会混淆应用程序。 我建议提交验证人bug issue at the official AMP project on GitHub