Polymer 1.0属性值重置为默认值

时间:2016-10-15 21:58:27

标签: javascript polymer-1.0

这是我与Polymer的第二轮比赛。这次我得到了一个绑定到表单输入集的对象属性。我运行一个iron-ajax请求来发送一个由表单获取的json对象,我得到了这个对象,几乎没有变化,我向对象添加了一个标识符。一切顺利,我发送json并以id值返回,但是当响应函数完成属性被设置回默认值,因为页面被重新加载。 Here您可以找到我的虚拟应用代码。还有另一个分支with-iron-input,我尝试使用iron-input而不是普通的旧input元素来实现我的目标,当然我也有同样的行为。我错过了什么?

更新:重新加载页面。我更新我的应用程序添加元素列表。列表的项目由json mock加载并正确显示,但是当我尝试执行PUT时,响应返回默认值显示,空列表也是如此。

1 个答案:

答案 0 :(得分:0)

好的我明白了。 我的组件如下所示:

<form>
  <iron-ajax ...></iron-ajax>
  <fieldset>
    <label for="offerId">Id</label><input id="offerId" type="text" value="{{offer._id::input}}"></input><br>
    ...
  </fieldset>
  <button on-tap="offerReset">New</button>
  <button on-tap="offerSubmit">Send</button>
  ...
</form>

正如我所说的那样,当我点击Send按钮时,我收到了数据,但页面已重新加载。我这样删除form标记:

<iron-ajax ...></iron-ajax>
<fieldset>
  <label for="offerId">Id</label><input id="offerId" type="text" value="{{offer._id::input}}"></input><br>
  ...
</fieldset>
<button on-tap="offerReset">New</button>
<button on-tap="offerSubmit">Send</button>
...

现在组件的行为符合预期。我还更新了GitHub回购。