问题标签 [polymer-1.0]

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 回答
950 浏览

polymer - 选择元素(Polymer 1.0)

我正在迁移到 Polymer 1.0

这是我的模板:

内容被主 html 文件中的文本填充。

我需要获取此 div 的滚动高度。我曾经做过:

但这不再起作用了:

我尝试向 div 添加一个 id,然后像这样选择它:

但这给了我一个 0 的值,即使内容中有很多文本。

我正在从ready函数中调用此代码。

我是否正确选择了元素?

0 投票
4 回答
1299 浏览

javascript - 如何在聚合物 1.0 中自动对焦/自动点击纸张输入?

我能够使用 javascript 并调用 .click() 或 .focus() 以便准备好纸张输入以输入聚合物 0.5.6。

1.0似乎失去了这个能力。有没有办法让输入准备好使用 JS 或使用新的 1.0 Polymer API 输入?

0 投票
1 回答
972 浏览

polymer - 在 Polymer 1.0 中记录 library/mixin/behaviors 元素

我有一个 Polymer 0.5 元素,主要用作库,我使用 mixins 将其注入到其他元素中。我将其格式化如下,所有 JSDoc 符号都显示在index.html

Polymer 1.0 用行为替换了 mixins,并给出了以下示例:

请注意,没有<dom-module id="highlight-behavior">norPolymer({...}) 元素声明。

我完全按照这个例子,但是当我访问 index.html 时什么都没有出现。所以我试着模仿我为 0.5 所做的事情:

我还尝试声明属性分配 ( EasySearch: EasySearchLib.EasySearch) 的变体并输入 abehaviors: [EasySearchLib]但文档中没有显示任何内容。

在访问 index.html 时,获取行为/库文档的最佳方式是什么?

0 投票
1 回答
628 浏览

javascript - 将对象数组绑定到包含 google-map-marker 元素的模板

我有<dom-module>一个 Array 类型的属性locations,每隔一段时间就会在外部更新:

在另一个模块中,我发送一个 AJAX 请求来检索要在地图上显示为标记的数据。请求完成后,我会更新位置属性,并且_locationsChanged回调会很好地触发。

这种情况下的数据如下所示:

奇怪的事情发生了。

只要位置是一个空数组,就会newLocations毫无问题地绑定到<template dom-repeat="{{locations}}">元素。但是,如果地图已经显示了几个标记,则旧<google-map-marker>对象仍然存在,只需添加新对象即可。因此,如果我在document.querySelectorAll('google-map-marker')更新到 后在开发控制台中执行此操作locations,我会同时看到newLocations oldLocations

为了测试数据绑定在<google-map>元素外应用时是否正常工作,我添加了一个类似的模板。在这里,一切都按预期完美运行:

以下是到目前为止没有帮助的内容:

  • 调用clear()GoogleMap 对象。
  • 创建绑定到 dom-repeat 模板的第二个属性,但以这种方式访问​​:
  • 使用单向数据绑定。
  • 通过手动删除 DOM 节点googleMap.removeChild(marker)并添加它们。好的,这实际上在某种程度上有效,但数据绑定的重点不是您不必这样做吗?

所以,总结一下:<template is="dom-repeat">谷歌地图内部没有得到关于属性更改的正确通知locations<google-map>谁能告诉我我做错了什么,或者数据绑定在元素内是否不起作用?我是否将事情与 shady / shadow DOM 混为一谈?我是否错误地使用了 dom-repeat 东西?我会失去理智吗?我将不胜感激任何有关解决方案的提示。谢谢!

0 投票
3 回答
16890 浏览

polymer - Polymer 1.0 - 绑定 css 类

我正在尝试包含基于 json 参数的类,所以如果我有属性颜色,则 $= 可以将其作为类属性传递(基于聚合物文档

问题是当我试图沿着现有的一组类添加该类时,例如:

在这种情况下, $= 就不行了。有什么方法可以做到这一点,或者每次我有条件地添加一个类时,我必须通过 css 选择器而不是类来包含其余样式?我知道在这个例子中,颜色可能只是简单地放在样式属性中,这纯粹是一个说明问题的例子。

请注意,这只是 Polymer 1.0 中的问题。

0 投票
3 回答
5645 浏览

meteor - 使用 blaze (meteor) 模板引擎在 Iron-icons 中设置的 Polymer 1.0 默认图标不工作

升级到 Polymer 1.0 后,默认的 iron-icons 设置不起作用。我正在尝试使用默认图标集中的主页图标。

HTML 代码片段:

我在 Chrome 调试器中收到警告:[iron-icon::_updateIcon]: could not find iconset icons, did you import the iconset?@ line#167 in iron-icon.html

调试显示在 iron-icon.html 的第 163 行

this._iconsetName具有值“图标”但this._iconset未定义。

我在这里错过了一些进口或其他东西吗?

编辑仅在 Meteor 中使用 Blaze 模板引擎时才会出现此问题。只是想为完整的图片添加这一点。

0 投票
1 回答
962 浏览

polymer-1.0 - webcomponentsjs 库是否支持 Internet Explorer 9?

webcomponents-lite.min.js - 这是否支持 IE9?运行 Polymer-starter-kit 时我没有得到积极的结果。有人能帮我吗?

0 投票
2 回答
10427 浏览

binding - 动态插入的聚合物元素中的数据绑定

有时我们可能需要将自定义元素动态添加到上下文中。然后:

  • 插入的聚合物可以接收一些与上下文中的另一个属性绑定的属性,因此它可以相应地改变。

  • 在聚合物 0.5 中,我们可以使用 PathObserver 将属性绑定到最近添加的组件的上下文属性。但是,我在聚合物 1.0 中没有找到解决方法或等效方法。

我为 0.5 创建了一个示例,为 1.0 创建了一个示例。请参阅下面的聚合物代码,它使注射。为了清楚起见,您还可以查看完整的 plunker 示例。

Ej 0.5:

请查看完整的 plunkr 示例:http ://plnkr.co/edit/2Aj3LcGP1t42xo1eq5V6?p=preview

Ej 1.0:

请查看完整的 plunkr 示例:http ://plnkr.co/edit/K463dqEqduNH10AqSzhp?p=preview

您知道聚合物 1.0 的一些解决方法或等效方法吗?

0 投票
0 回答
128 浏览

unit-testing - 模拟聚合物进口

是否有可靠的方法来模拟 Polymer(或 vanilla Web 组件)中的导入依赖项?
我检查了这个问题和他们建议之前定义模拟自定义元素的其他资源。
虽然这种方法实际上会模拟自定义元素定义,但它不会阻止稍后导入原始 dep并执行其脚本!
这肯定会导致冲突、不一致和不需要的代码执行,其中依赖项不仅仅是定义一个元素。

将此作为相关主题进行检查

0 投票
2 回答
320 浏览

polymer-1.0 - grunt-vulcanize 是否与 vulcanize 1.8.1 兼容?

我开始尝试使用 Polymer 1.0 并且遇到硫化过程的问题。我为所有通过 index.html 中的导入加载的组件导入包含了一个单独的 html 文件。该站点目前是一个单页,带有一个纸抽屉面板,几个纸头面板(抽屉和主面板),里面有纸工具栏。在我硫化网站之前,这一切都完美无缺。一旦我硫化网站,无论屏幕大小如何,纸抽屉面板都会在“抽屉”部分上方呈现“主要”部分。

硫化前(抽屉打开)

在此处输入图像描述

硫化后

在此处输入图像描述

我做了一些调查,这个页面指出硫化 1.0+ 版适用于聚合物 0.8+ 版。当前版本的 vulcanize 是 1.8.1,所以我假设它适用于 Polymer 1.0。现在,当我安装包含 vulcanize 0.7.9 的 grunt-vulcanize 时,根据文档,它与 Polymer 1.0 不兼容。这是 npm list 的输出:

那么如何让 grunt-vulcanize 使用 vulcanize 1.8.1?