gpt4 book ai didi

javascript - 我可以使用 CDN 中的 ES Modules 库吗?

转载 作者:行者123 更新时间:2023-12-01 15:18:17 24 4
gpt4 key购买 nike

我想通过 CDN 使用这个库。
https://www.jsdelivr.com/package/npm/lit-element

我的js代码在这里。

import { LitElement, html } from "https://cdn.jsdelivr.net/npm/lit-element@2.1.0/lit-element.js";

class MyElement extends LitElement {
render(){
return html`ABCD`
}
}

customElements.define("my-element", MyElement)

我收到以下错误。

Uncaught TypeError: Failed to resolve module specifier "lit-html". Relative references must start with either "/", "./", or "../".



我必须使用 npm 构建吗?

更新

以下代码有效。
import { LitElement, html } from "https://unpkg.com/lit-element/lit-element.js?module"

class MyElement extends LitElement {
render(){
return html`ABCD`
}
}

customElements.define("my-element", MyElement)

最佳答案

在 LitHtml 和 LitElement 模块内部使用裸模块说明符在内部导入依赖项,而 JS 模块尚不支持这些。 LitElementimport { TemplateResult } from 'lit-html' , 但是 JS 需要 'lit-html'替换为实际文件的任何路径(不是包的抽象名称)。
如果您使用 npm 包(cdn.jsdelivr.net 在这里提供),您必须使用构建步骤(WebPack、Rollup 等)来解决所有这些 import声明到 JS 支持的文件路径或将所有文件内联在一起。
前者是什么unpkg.com ... ?module确实,它替换了对 lit-html 的裸引用绝对https://unpkg.com/lit-html@^1.1.1/lit-html.js?module .

关于javascript - 我可以使用 CDN 中的 ES Modules 库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56506084/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com