聚合物铁形式不工作

Polymer iron-form not working

我的 html 中有以下标记:

<form is="iron-form" login-form>
    <paper-input label="Email" type="email" name="email"></paper-input>
    <paper-input label="Password" type="password" name="password"></paper-input>
    <paper-button class="self-end btn-primary" raised login-btn>Login</paper-button>
</form>

在chrome中,表单从未升级为iron-form,但在firefox 中运行良好。但是,我可以使用: document.createElement('form', 'iron-form'); 创建一个正确升级的铁形式。 这真让我抓狂。有任何想法吗?谢谢

我不确定为什么 iron-input 的工作方式会有所不同。您确定在模板中创建铁输入时 作为聚合物元素 可以正常工作吗? (比如有没有像debounce这样的实用函数?)我问是因为它看起来像一个标准输入

查看 Meteor 代码,任何 类型扩展元素似乎都不起作用。据我所知,所有标签的创建似乎都在这里进行:

https://github.com/meteor/meteor/blob/832e6fe44f3635cae060415d6150c0105f2bf0f6/packages/blaze/materializer.js#L99

为了处理类型扩展自定义元素,我认为这需要另一个分支来做类似的事情:

} else if (tag.attrs && ('is' in tag.attrs)) {
  // type-extension custom element
  elem = document.createElement(tagName, tag.attrs[is]);     
} else {
  // normal elements
  elem = document.createElement(tagName);
}

双参数 createElement 仅在您具有本机自定义元素支持或安装了 polyfill 时才有效,因此 Meteor 可能希望以另一种方式处理此问题。