amp表单根据服务器响应显示不同的内容

时间:2017-10-25 04:55:52

标签: amp-html

我知道我可以使用submit-success和submit-error。但我需要更多选择。

例如,如果服务器返回{"result": "0"},我想显示result=0的消息,如果result=1则显示图像,result=2显示另一种形式,等

1 个答案:

答案 0 :(得分:1)

您可以使用mustache sections完成此操作。我们的想法是在JSON响应中对不同的结果类型进行编码,例如:

{
  "message": {
    "text": "Hello World"
  }
}

或图片:

{
  "image": {
    "src": "/my-image.png",
    "width": 300,
    "height": 200
  }
}

然后,您可以以submit-success div:

的形式呈现不同的结果类型
<form ...>
  <fieldset>
    ...
  </fieldset>
  <div submit-success>
    <template type="amp-mustache">

      {{#message}}
      <p>{{text}}</p>
      {{/message}}

      {{#image}}
      <amp-img src={{src}} layout=responsive width={{width}} height={{height}}>
       </amp-img>
      {{/image}}

    </template>
  </div>
</form>