这可能是一个愚蠢的问题,因为它很难实现,但我还是想问......
取这个标记:
<input is="my-input" name="foo">
和这个假定的组成部分:
<polymer-element name="my-input">
<template>
<div>
<span class="myinput" name="{{name}}">
</div>
</template>
....
是否可以将渲染的DOM转换为:
<div>
<span class="myinput" name="foo">
</div>
通过有效替换初始本机HTML输入?
用例是提供后备。如果浏览器不具备Web组件,则它将回退到本机控件。此外,作者可以编写他们所知道的语法:HTML - 并且可以通过单个&#39;来增强原生控制。属性。
答案 0 :(得分:0)
更新:否。
Shadow DOM封装(与改变用户的DOM相反)是Polymer中的一个基本概念。曾经有一个lightdom
attribute可以做类似于你要求的事情,但它最终成为removed(discussion)。
你可以非常轻松地use native custom elements alone来实现这样的事情。或者也许Mozilla的x-tag或IBM的delite覆盖了这个用例。
原始答案
使用polymer-element
标记上的extends
attribute:
<polymer-element name="my-input" extends="input" attributes="name">
这里是working example。