AMP
  • 网站

条件状态

简介

此代码片段演示了如何使用条件创建简单的 amp-state

设置

我们使用 amp-bind 创建动态 amp-state

<script async custom-element="amp-bind" src="https://cdn.ampproject.org/v0/amp-bind-0.1.js"></script>

基本用法

charStateinput 组件中的 AMP.setState 块设置。我们通过使用 input-throttled 来检查用户输入的 state 是否已更改。如果输入的 state 已更改,我们将检查输入中的当前字符数 (event.value.length)。字符数决定了将设置哪个 charState。问号 ? 和冒号 : 之间的项满足所述条件。冒号 : 之后的项适用于任何不满足所述条件的情况。可以在同一个 AMP.setState 块内设置多个条件。

当用户在 input 部分键入少于 10 个字符时,他们会看到消息“字符数少于 10 个,请键入更多字符!”。

当用户在 input 部分键入超过 10 个字符时,他们会看到消息“您已键入超过 10 个字符,现在可以停止了。”。

尝试在文本框中键入一些字符。

<p [text]="charState">
  Try typing a few characters into the textbox.
</p>
<input type="textbox" on="input-throttled:AMP.setState({
        charState: event.value.length < 10 ?  
          'There are under 10 characters, type more!' : 
          'You have typed over 10 characters, you can stop now.'
        })">
需要进一步解释吗?

如果此页面上的解释没有涵盖您所有的问题,请随时与其他 AMP 用户联系,讨论您的具体使用案例。

转到 Stack Overflow
一个未解释的功能?

AMP 项目强烈鼓励您的参与和贡献!我们希望您能成为我们开源社区的长期参与者,但我们也欢迎您为自己特别关注的问题做出一次性贡献。

在 GitHub 上编辑示例