绑定放大器状态的初始值

时间:2017-09-27 13:53:17

标签: amp-html

我想按如下方式初始化放大器状态:

<amp-state id="tabs">
  <script type="application/json">
  {
    "selected": "latest"
  }
  </script>
</amp-state>

然后在第一页请求中显示此初始化值:

<p [text]="tabs.selected"><p>

这不起作用。只有状态发生变化时才会更新p标记的内容。例如,从一个按钮:

<button on="tap:AMP.setState({tabs: {selected: 'top'}})">Press me</button>

我希望页面上的元素能够在进一步的用户交互之前反映初始化状态。

Codepen:https://codepen.io/powlo/pen/VMpVRm/?editors=1000

1 个答案:

答案 0 :(得分:5)

在页面加载时不评估amp-bind表达式。这是为了避免页面加载时的布局跳转。如果要在页面加载时动态初始化元素,则需要使用amp-list扩展名(即使它只是一个元素)。