问题标签 [custom-element]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1918 浏览

polymer - 聚合物 1.0:用法

Polymer 1.0 元素的正确使用<iron-meta>令人困惑。这是Github 上的链接。这里是Polymer 演示站点的链接。

有人可以提供一个正确的代码示例来说明如何使其工作吗?

这是我到目前为止的代码。

这是该问题的Github 链接。这是一个Github 存储库,其中包含完整 Web 应用程序上下文中的完整问题代码。

0 投票
3 回答
154 浏览

css - 聚合物定制样式有时会级联错误

我注意到使用聚合物定制样式时级联并不总是正确的。从它的外观来看,这可能是级联应用于自定义元素的方式中的一个错误,但我只想确认我没有做一些愚蠢的事情。

对于我的自定义元素,请考虑以下范围样式:

...但是一旦渲染, :first-child 就会被第一个定义覆盖,如下图所示。确保border: none正确应用 my 的唯一方法是使用!important,我不希望这样做。

在此处输入图像描述

我应该注意到,我在许多其他地方都看到过这种行为,并选择仅将!important其用作快速解决方案,但这开始感觉很笨拙。

只需在此处添加渲染元素的图像即可显示“不正确”的顶部边框。

在此处输入图像描述

0 投票
1 回答
195 浏览

dart - 创建自定义 Polymer 元素

我正在尝试创建一个自定义 Polymer 元素,该元素可扩展paper-shadow以显示 Tweet。

这是我的实现:

tweet_element.html

推特飞镖

最后是创建 TweetElement 并尝试将其添加到 DOM 的代码:

当我运行它时,我得到:

所以然后我尝试将twitter.dart更改为:

并将元素添加到 DOM 中,如下所示:

现在我得到了这个错误:

0 投票
5 回答
4388 浏览

html - 自定义元素选择器

有没有办法用 CSS 选择所有自定义元素?我想让所有自定义元素默认成为块元素(大多数浏览器默认将它们内联),然后根据需要覆盖它。

我的规则可能看起来像这样:

所有自定义元素在标准中都有破折号,所以我可以利用它创建一个规则,但在许多/大多数当前浏览器上它会更慢,因为它需要使用正则表达式。如果有一个内置的选择器,这可能会更快。

0 投票
2 回答
123 浏览

dart - 模板数据绑定

我正在尝试使用数据绑定创建自定义元素。

这是我的自定义元素模板:

推特飞镖

这就是我创建和添加元素的方式:

主要.dart

tweet-element元素并被添加到 DOM,但具有数据绑定的字段为空白:

铬 DOM

对象没有问题tweet,因为我尝试使用其他字符串设置元素字段,但它也不起作用。

0 投票
1 回答
112 浏览

dependencies - 如何在 Polymer 中指定自定义元素依赖项

很抱歉这个小问题,但假设我想要一个自定义元素,比如“my-login-form”,其中包括“iron-input”。我如何表示我的表格取决于“铁输入”?我应该使用类似的东西吗

在“my-login-form.html”文件的开头?

0 投票
1 回答
150 浏览

javascript - 聚合物自定义元素不服从父 html 元素

我正在使用 Polymer 1.0 - 我的页面包含在 a 中paper-scroll-header-panel,并且我正在尝试将主工具栏的一部分转换为自定义元素 ( my-header):

my-header自定义元素如下所示:

问题是布局属性bottom center horizontal layout没有被正确应用,因为它不服从父<paper-toolbar>元素。它呈现如下: 布局问题

但它应该与橙色框底部和Title左侧的文本一起呈现,中间的长弹性框和LANG最右侧。如果我从自定义元素中提取 HTML 并将其直接粘贴到 index.html 文件中,它就可以正常工作。

如您所见,我向元素添加了一些行为,并尝试在ready函数中调用它们,但无济于事..

我还尝试将整个元素拉入自定义元素中,但这只会在's 的功能<paper-toolbar>上产生更多问题。<paper-scroll-header-panel>

我怎样才能让这个自定义元素留在其父元素内并遵守格式化类/属性?

0 投票
1 回答
423 浏览

html - 在 Polymer 自定义元素中引用 3rd 方 JS 库的最佳做法是什么?

目前,我面临一些关于重复引用 3rd-party 库的严重问题,这会导致一些库出现故障。

这是第一个自定义元素。

这是另一个元素。

如您所见,这两个脚本标记都引用位于同一路径中的 jQuery。通常,浏览器应该加载 jQuery 2 次,这会导致一些严重的问题,如下面的代码。

当第二次加载 jQuery 时,所有注册的事件都将被清除。

http://jsfiddle.net/sry1shpt/

我认为这不是 jQuery 或任何其他第三方库的错误。但这是聚合物的一个严重问题。允许元素加载重复脚本完全是胡说八道。

你有什么实用的方法来解决这个问题吗?

请记住,这两个元素的源代码可能位于不同的存储库中,并且不应该相互了解。

谢谢,

0 投票
1 回答
71 浏览

javascript - 共享自定义元素创建性能

Polymer 文档建议使用自定义元素来共享一些静态数据,例如配置。类似的东西<app-settings>

我想知道从性能的角度来看它是否是最佳的。每当使用这种非视觉元素时,都必须创建它。简单地以全局变量或 (AMD/requirejs) 模块的形式共享设置不是更好吗?

对于像<iron-ajax>. 如果我将许多自定义元素放在我的自定义元素中,它不会影响性能,而不是简单地使用一些现有的 XHR 库吗?

0 投票
1 回答
1263 浏览

css - Shadow DOM 重置样式表

我希望我正在制作的应用程序可以reset.css在全球范围内使用。我也希望它能够穿透所有阴影根,但特异性较低。我怎样才能做到这一点?

假设我的reset.css内容如下:

然后我的自定义元素有一个模板,如:

我的问题是模板的li选择器没有足够的特异性来击败::shadow li。我不想在每个自定义元素中重复自己。我想我可以<link>为每个添加一个,<template>但我会再次重复自己。我也可以让 JavaScript 注入,<link>但我不确定这是最好的方法。

我可以使用哪些其他方法reset.css来穿透阴影根但特异性很小?