【问题标题】:Polymer 1.0 property value reset to defaultPolymer 1.0 属性值重置为默认值
【发布时间】:2016-10-15 21:58:26
【问题描述】:

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

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

【问题讨论】:

    标签: javascript polymer-1.0


    【解决方案1】:

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

    <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 存储库。

    【讨论】:

      猜你喜欢
      • 2015-09-19
      • 1970-01-01
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 2010-10-16
      相关资源
      最近更新 更多