在Polymer中,为什么要使用`<input is ="iron-input">`而不是`<iron-input>`?

Han*_*Sun 4 html5 web-component polymer

在Polymer文档(https://elements.polymer-project.org/elements/iron-input)中,我发现:

<input is="iron-input" bind-value="{{myValue}}">
Run Code Online (Sandbox Code Playgroud)

在另一份官方文件(https://www.polymer-project.org/1.0/docs/devguide/registering-elements.html#type-extension)中,我发现:

    <dom-module id="main-document-element">
      <template>
        <p>
          Hi! I'm a Polymer element that was defined in the
          main document!
        </p>
      </template>
      <script>
        HTMLImports.whenReady(function () {
          Polymer({
            is: 'main-document-element'
          });
        });
      </script>
    </dom-module>
    <main-document-element></main-document-element>
Run Code Online (Sandbox Code Playgroud)

我只是想知道为什么第一个<input is="iron-input" bind-value="{{myValue}}">不能写成<iron-input bind-value="{{myValue}}">.

它是否兼容,这使得更容易填充?

Ben*_*mas 8

该iron-input元素的源代码中不包含任何HTML.这意味着:

<iron-input bind-value="{{myValue}}">
Run Code Online (Sandbox Code Playgroud)

不会在页面上产生实际输入以供用户与之交互.该iron-input元素实际上是可以应用于标准HTML输入的行为集合.