javascript - 是否可以创建任何人无需安装即可使用的 Web 组件?

标签 javascript html polymer web-component custom-element

我刚刚开始使用 Web 组件,如果我理解正确的话,关键是它们可以被任何人重用。是否有可能创建一个任何人都可以使用的组件,只需将一段 html 添加到他们的静态站点(类似于添加 JavaScript 小部件的方式,只需复制粘贴几行代码),或者它是否需要被人安装?或者这不是网络组件的预期用例?

最佳答案

是的。 Web 组件是一种“Javascript 小部件”。

通常,您在 Javascript 文件中定义 Web 组件。 然后,您可以将其包含在带有 <script> 的任何 HTML 中。元素。

带有名为 <hello-world> 的最小自定义元素的示例:

hello-world.js 中:

customElements.define( 'hello-world', class extends HTMLElement {
    constructor() {
        super()
        this.attachShadow( {mode: 'open' })
            .innerHTML = 'Hello World!'
    }
} )

在您的主页 index.html 中:

<html>
    <head>
        <!-- import the web component -->
        <script src="hello-world.js">
    </head>
    <body>
        <!-- use the new element -->
        <hello-world></hello-world>
    </body>
</html>

注意:或者,也可以将定义自定义元素的 Javascript 代码复制粘贴到其主 HTML 页面。

关于javascript - 是否可以创建任何人无需安装即可使用的 Web 组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53410440/

相关文章:

javascript - 如何在 JS 中循环一个函数一段时间

javascript - d3.js 中数组元素的绑定(bind)

html - 具有固定高度状态栏的 100% 高度内容的适当 CSS

javascript - 手动触发 polymer iron-ajax 请求

javascript - 如何访问我的新 Symfony API

php - PHP 如何访问 div 的 'style' 属性?

html - 滚动时灰度滤镜与导航栏重叠的图像

c# - 如何通过 C# 从 mshtml 元素获取所有应用的 CSS 样式信息

dart - 销毁 polymer 元素时处置StreamController

dart - 无法在 DART 1.9.3、Polymer 0.16.1+2 中使用 initPolymer().run