问题标签 [web-component]
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.
dart - Dart WebComponent 上不允许使用绝对路径
到目前为止,我的小 Dart/Polymer 样本效果很好。 (GitHub)
这是我使用的 yaml 文件:
“pub build” 产生:(在GH下再次生活)
据我了解,现在我有 2 个 web 组件:hello-world 和秒表
我做了第二个项目,完全独立于 PolymerHelloWorld。这是 index.html:
我收到此错误消息
这不就是 webcomponents 的想法吗?我错过了什么吗?
[更新]
我将DART-Sample-PolymerElementConsumer添加到我的 GH-Repo 中。它包括整个聚合物材料......这个样品不是飞镖样品。它使用聚合物来导入组件。至少 - 它试图...
这是它尝试运行的 HTML:
https ://rawgithub.com/MikeMitterer/DART-Sample-PolymerElementConsumer/master/web/index.html
代码视图:
https ://raw.github.com/MikeMitterer/DART-Sample-PolymerElementConsumer/master/web/index.html
HTML 页面没有显示错误消息 - 没有。只是标题,但没有来自 web 组件。
javascript - 如何以声明方式创建自定义 HTML 元素?
javascript - Facebook 的 React 与 Web 组件(聚合物)的优缺点
Facebook 的React相对于即将到来的Web Components规范的主要优势是什么,反之亦然(或者可能与 Google 的Polymer库进行更全面的比较)?
根据这个 JSConf EU talk和 React 主页,React 的主要好处是:
- 使用组件模型解耦和增加内聚
- 抽象、组合和表现力
- 虚拟 DOM 和合成事件(这基本上意味着它们完全重新实现了 DOM 及其事件系统)
- 在 IE 8 上启用现代 HTML5 事件内容
- 服务器端渲染
- 可测试性
- 绑定到 SVG、VML 和
<canvas>
除了这个虚拟 DOM 概念(显然)之外,几乎所有提到的内容都通过 Web 组件本地集成到浏览器中。我可以看到虚拟 DOM 和合成事件在今天如何有益于支持旧浏览器,但是从长远来看,扔掉大量的原生浏览器代码是不是有点像在踢自己的脚?就现代浏览器而言,这不是很多不必要的开销/重新发明轮子吗?
以下是我认为React 缺少的一些 Web Components 会关心的东西。如我错了请纠正我。
- 本机浏览器支持(阅读“保证更快”)
- 用 vanilla JavaScript 编写 JavaScript,用 CSS 编写 CSS,用 HTML 编写 HTML。
- 使用 Shadow DOM 进行样式封装
- React 有this,这需要在 JavaScript 中编写 CSS。不漂亮。
- 双向绑定
dart - 是否可以创建自定义使用不同的布局算法?
我正在尝试创建具有以下特征的自定义 Web 组件:
- 可以有多个子
<li>
元素(比如<ul>
and<ol>
) - 具有子
<li>
元素的自定义布局算法。准确地说,我想<li>
根据元素的渲染大小来布局元素,所以我需要一种方法来测量每个孩子的大小。
我一直在试验 CSS 和 polymer.dart,但现在我几乎被困住了。有没有办法使用polymer.dart 创建这样的元素?
当前的实现如下图所示:
每个盒子都是一个<li>
具有绝对坐标的元素。这些盒子目前是随机定位的,但我真正想做的是布置每个盒子,这样它们就不会相互重叠。
当前的问题是,在实际渲染每个孩子之前,我无法测量它们的大小。我尝试使用隐藏的虚拟元素预先测量大小,但似乎聚合物直到之后才更新 DOM,所以我什至不能使用虚拟元素。
当前的实现可以在https://github.com/rillomas/xclamm-gae/tree/51061a3bf33fe15724103517437d3281fe6ec495/web/lib/components找到。我正在试验的组件是<remark-presenter>
(自定义<ul>
组件)和<remark-view>
(自定义<li>
组件)。
jquery-ui - 如何将可动手做的小部件嵌入到聚合物飞镖 Web 组件中
我尝试将基于 jquery 的 handonetable ( http://handsontable.com ) ui 小部件嵌入到聚合物飞镖 web 组件中。
Webcomponent 是这样定义的:
t.dart:
我没有收到错误,但组件未初始化。如果我在 main.dart 中尝试,它工作正常。
该方法适用于 jquery-ui 小部件“datepicker”如何将 jquery ui 小部件嵌入到聚合物飞镖 Web 组件中
javascript - 如何为自定义元素添加属性?
我正在尝试在我的自定义元素中添加属性并在我的新元素中使用它,但是很难使用语法。我看过这篇文章,但不太清楚它的用法。如何在创建的回调中声明和使用自定义“标签”属性来呈现它?
http://jsbin.com/UdOwizU/4/(仅适用于 Google Canary)
dart - 嵌套聚合物模板继承
有没有办法用它的父模板包围一个聚合物子模板?
在以下示例中,影子标签将父模板带入子视图,但它忽略了其内容:
母体聚合物元素
子聚合物元素
javascript - 如何使用“is”扩展原生 DOM 元素?
我正在尝试使用自定义元素规范来使用“is”属性扩展本机 DOM 元素,但它似乎根本没有做任何事情。我正在使用 Google Canary,所以我可以创建自定义元素,但对扩展没有影响。
在我的示例中,我尝试向原生 img 标签添加标题:
createdCallback 永远不会触发。关于如何做到这一点的任何想法?
javascript - Undefined _polyfilled when using Google Polymer platform?
I am trying to create a very simple example with Google Polymer's platform.js, but I get the following error: Uncaught TypeError: Cannot read property '_polyfilled' of undefined
Here is what I am trying to do:
http://jsbin.com/uwUxeYA/1/edit
Note that this code works perfectly in Google Canary without platform.js loaded. Am I using the polyfill incorrectly for other browsers (latest Chrome, Firefox, etc)?
javascript - 使用在 Polymer 元素内的 light dom 中定义的模板
我正在尝试将模板从 DOM 移动到元素内部。
这是我的元素:
这是我的 html 文件:
我似乎无法让 test.html 中的模板在 bt-sortable-list 自定义元素中使用。一般的想法是自定义元素将处理列表和其他事情,同时让使用该元素的 html 定义列表元素的显示方式。我已经尝试以编程方式添加模板,如图所示。我也试过在 bt-sortable-list 元素下没有模板。我还尝试使用内容元素来获取 test.html 中的模板内容。
任何建议将不胜感激。