问题标签 [google-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.

0 投票
1 回答
1068 浏览

javascript - Web 组件:访问自定义组件类中的影子 DOM

在这个项目中,我正在尝试创建一个自定义组件,该组件将充当地图。我仍在通过 W3C 文档和几个 Youtube 视频学习 Web 组件的基础知识。

主要问题是,在组件类中有一个调用的函数attributeChangedCallback(),每当其中一个属性更改时都会触发,这些属性包含在observedAttributes()函数中,并且在设置它们之后(前面提到的函数)我尝试访问shadow DOM(即声明connectedCallback()将在组件加载到 HTML body 元素中后触发)通过选择器。但是,如果我这样做,变量内容为空。

attributeChangedCallback()应该在加载内容之后加载,所以我不明白为什么会发生这种情况,每次属性更改时我都需要访问这个元素,以便我可以更新它的内容。奇怪的事实:如果我每次attributeChangedCallback()执行它都会记录两次(因为我有两个属性被监视)。

这是片段:

更新

就像@acdcjunior 在更改this.createShadowRoot();this.shadow = this.attachShadow({mode: 'open'});(从ShadowDOM v0 到v1)之后提到的那样解决了我的问题,因为该connectedCallback()函数在幕后执行并且只执行一次。

0 投票
4 回答
831 浏览

polymer - 在聚合物 3 中使用 Google Web Components 元素

我们如何在聚合物 3 中安装 Google Web Components 元素

示例 - 使用 google-youtube 或更多元素尚不支持 npm install!

https://www.webcomponents.org/element/GoogleWebComponents/google-youtube

有没有人想出为聚合物 3 安装这个。

0 投票
1 回答
691 浏览

web-component - 阴影元素的全局 CSS 效果。为什么?

两种 CSS(一个在 light dom 中,一个在 shadown dom 中)都对标签有影响。
姓名和电话也受全局 CSS at 和 Shadow Scope CSS 的影响!!!
为什么 ?????我不想要它。
我预计它们只是受到模板范围内的 Sahdow 范围 CSS 的影响。
我希望我能从你那里得到一些想法。

https://plnkr.co/edit/Asr1S1UFvhmhtZeWm5k8

0 投票
2 回答
3422 浏览

zooming - 谷歌模型查看器 - 如何设置最大缩放?

我对使用 Google model-viewer能够做的事情感到非常高兴。它是相对可配置的,但我希望能够用相机做更多的事情——例如,设置与目标的最大缩放/最小距离。我找到了似乎建议如何修改它的代码,但我不知道如何覆盖通过 CDN 传递的脚本。我唯一的选择是使用 npm 下载吗?

原谅我的天真!

0 投票
0 回答
76 浏览

polymer - dom-repeat 完成后的函数

我在 Polymer 2 中创建了新组件,在其中我将使用 2 个 Web 组件,组件 a 用于显示 div 的名称和组件 b 的长度,它们将在此 Web 组件内运行 dom-repeat。话虽如此,在 dom-repeat 完成后,我的代码无法按我想要的方式工作。在 dom-repeat 运行完成后,我需要获取组件 b 的长度: - 获取长度并将我的计数器放入组件 a - 将所有组件 b 分成 6 个一组在一个 div 中

我在小提琴中制作了一些 JQuery 代码,并将放在下面,这适用于默认 div,但是当我放入我的聚合物元素的准备方法时返回 0,而不是等待 dom-repeat 完成。我试过 setTimeout 但这也不起作用。

在这里,我将介绍它现在是如何工作的。组件 a 具有显示计数器的属性。

这就是 Firefox 中显示的结果。初始计数卡:0 列表:0

但是我的数组有 24 张卡片,使用该 jquery 代码将是 4 个列表

0 投票
1 回答
162 浏览

firebase - 我可以“拦截”来自具有云功能的谷歌云托管服务 PWA 的请求吗?

我使用 PWA 入门套件https://pwa-starter-kit.polymer-project.org/创建网站。我在 Google App Engine 上托管网站,因为它很容易托管并提供开箱即用的 PRPL 模式https://pwa-starter-kit.polymer-project.org/building-and-deploying#building-为-prpl-服务器

但是,在我的新项目中,我为每个客户使用了一个单独的子域。每个客户在我的 firebase 数据库中都有不同的租户 ID。我的问题是:我是否可以使用云功能拦截 PWA 的 http 请求,并根据请求的子域从我的数据库中检索客户端的租户 ID?

过去,当我使用 firebase(函数和托管)托管所有内容时,我能够将其添加到 firebase.json 以将 PWA 的 http 请求重定向到我称为“renderApp”的 firebase 函数

如何在使用 Google App Engine 托管我的 PWA 时达到同样的效果?我认为有某种方式,但由于我没有 firebase.json 了,我不知道该怎么做。

简而言之; 当我将租户 ID 发送给客户端时,我希望将租户 ID 烘焙到我的 PWA 中,但我必须首先查找位于我的 firebase 数据库中的租户 ID(基于 http 请求中的子域)

0 投票
1 回答
84 浏览

web-component - 我如何知道 litelement 的屏幕上是否有 web 组件?

我用litelement做了一个小项目,但是我想在显示webcomponent时触发一个事件,不仅是第一次,而且每次显示组件时,我该怎么做?

提前致谢

0 投票
0 回答
81 浏览

3d - Google Model Viewer – 有没有办法添加自定义光标?

我想自定义 Google 模型查看器光标,但无法使用 CSS 光标属性进行自定义。我正在使用发布版本。我已经尝试过自定义图像和生成的 CSS 光标,它们在我网站的其余部分都可以正常工作,但查看器总是默认生成的光标“抓取”和“抓取”。有没有办法使用发布版本替换这些?

0 投票
1 回答
1321 浏览

javascript - 在自定义 Web 元素中加载外部 JavaScript 文件

我的目标是使用自定义 Web 元素创建自定义表单组件。我需要为表单组件添加样式。

所以我正在使用materializecss包。我需要导入 CSS 和 JavaScript 文件。我无法使用外部 JS 文件。我正在使用 WebPack 来捆绑文件。

在代码中,我试图加载 Materialize JS 文件,但它不起作用。我不知道如何在自定义 Web 元素中加载 Js 文件。请有人帮助我。

0 投票
2 回答
195 浏览

reactjs - 将 Polymer Web 组件集成到用 Typescript 编写的 React 应用程序中?

尝试将 Polymer Web Components 工具提示功能集成到用 TypeScript 编写的 React 应用程序中。

在编译时,它抛出错误Property 'paper-tooltip' does not exist on type 'JSX.IntrinsicElements'

所以,试图<paper-toooltip>进入 JSX 命名空间,我创建了这个文件:

Tooltip.txs

我在这里做错了什么?

另外,我知道在 React/TypeScript 中,组件需要以大写字母开头,比如“I”……这增加了我的困惑,我不明白。