我正在尝试实现 amp-list 组件。我已经在亚马逊 S3 存储桶上上传了一个公开可用的 json 文件,因为内容将通过 https 协议提供。我使用了文档中的示例文件(https://github.com/ampproject/amphtml/blob/da89bab7c3401f4200d4c58166d5ca062f77e0c0/extensions/amp-list/amp-list.md)并稍微修改了它:
<html ⚡>
<head>
<meta charset="utf-8">
<title>amp-list examples</title>
<link rel="canonical" href="$SOME_URL" />
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
<style>body {opacity: 0}</style><noscript><style>body {opacity: 1}</style></noscript>
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-template="amp-mustache" src="https://cdn.ampproject.org/v0/amp-mustache-0.1.js"></script>
</head>
<body>
<h2> ******* LIST *******</h2>
<amp-list width=300 height=200 src="https://s3-eu-west-1.amazonaws.com/gerswap/test.json">
<template type="amp-mustache">
<div>
<p>text : {{text}}</p>
<p>url : {{url}}</p>
</div>
</template>
</amp-list>
</body>
</html>
验证器说:“AMP 验证成功”,但列表中没有显示任何内容。
我还尝试通过在 amp-list 标记的模板属性中引用它的 id 来指定模板,如文档(引用现有模板元素的 ID 的模板属性)中所述:
<!doctype html>
<html ⚡>
<head>
<meta charset="utf-8">
<title>amp-list examples</title>
<link rel="canonical" href="$SOME_URL" />
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
<style>body {opacity: 0}</style><noscript><style>body {opacity: 1}</style></noscript>
<script async src="https://cdn.ampproject.org/v0.js"></script>
<script async custom-template="amp-mustache" src="https://cdn.ampproject.org/v0/amp-mustache-0.1.js"></script>
</head>
<body>
<h2> ******* LIST *******</h2>
<amp-list template="list" width=300 height=200 src="https://s3-eu-west-1.amazonaws.com/gerswap/test.json">
</amp-list>
<template id="list" type="amp-mustache">
<div>
<p>text : {{text}}</p>
<p>url : {{url}}</p>
</div>
</template>
</body>
</html>
列表仍然没有显示任何内容,并且验证器返回:“DISALLOWED_ATTR 模板”。似乎 amp-list 标签上不允许使用模板属性...
也许我没有正确理解文档......
任何帮助使其工作将不胜感激。