【问题标题】:Is the content element used in Polymer 1.0?Polymer 1.0 中是否使用了内容元素?
【发布时间】:2016-09-20 17:37:20
【问题描述】:

https://www.polymer-project.org/1.0/docs/devguide/local-dom#dom-distribution

在“Dom Distribution”下的上述链接中,它说:

为了支持元素的 light DOM 与其本地 DOM 的组合,Polymer 支持 <content> 元素。 ...

只是想知道这是否已过时? Polymer 1.0 是否使用此处所述的插槽?

https://developers.google.com/web/fundamentals/primers/shadowdom/?hl=en#composition_slot

【问题讨论】:

    标签: polymer polymer-1.0 web-component


    【解决方案1】:

    它肯定在 Polymer 1.0 中工作,即使是使用 Shadow DOM;我目前在使用 Polymer 1.6 的项目中使用它,但它在 Polymer 2.0 或更新版本中可能已过时。

    @ebdel 确认他们会将插槽添加到 webcomponents.js,但目前没有人分配给它:https://github.com/webcomponents/webcomponentsjs/issues/430

    更新

    在 Polymer 1.7 中,他们引入了 <slot> 元素,用于准备升级到 2.0,应该很快就会发布。 2.0 将没有 <content> 元素,因为它们切换到 CustomElement v1 规范。我建议如果您打算使用<content> 元素,请将其切换到插槽,以便将来您只需升级聚合物库而无需大量迁移。

    插槽的工作方式有点不同,插槽没有选择器:

    <dom-module id="my-element">
        <template>
            <slot name="content"></slot>
        </template>
        <script>
        Polymer({
            is: 'my-element'
        });
        </script>
    </dom-module>
    
    <my-element>
        <div slot="content">My Content</div>
    </my-element>
    

    【讨论】:

    • 您可以将 不带名称 attr 用于默认内容(但此时此损坏,PR 修复已合并到 Polymer repo )
    猜你喜欢
    • 1970-01-01
    • 2016-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-31
    • 2015-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多