为什么open-wc脚手架会推广lit-html

why does open-wc scaffold promotes lit-html

我在一家拥有大型 webcomponents 目录的大公司使用 Polymer 1 和 2 工作了大约一年,我相信 webcomponents 会非常有用。我知道 "cons ideas" 比如 https://adamsilver.io/articles/the-problem-with-web-components/.

现在我正在深入研究如何有效地使用 vanilla webcomponents。我刚开始的前提是使用 vanilla web-components 将有助于与 webcomponents 改进保持一致(我无法捍卫这个想法 - 我现在只是假设)。然后我正在尝试创建一个堆栈来使用 vanilla webcomponents。

搜索推荐的测试方法时我找到了 https://open-wc.org/testing,我认为它的目的是在不添加特定框架的情况下促进良好实践(来自其站点:"Open Web Components is a community-effort, independent of any framework or company")。这正是我正在寻找的:一种类似于我们对来自 micorservice.io 的微服务的良好实践和众所周知的建议(这只是一个类比)。

我在 package.json:

尝试使用脚手架
  "dependencies": {
    "lit-html": "^1.0.0",
    "lit-element": "^2.0.1"
  }

所以,我的主要问题是:为什么 lit-html 用于网络组件?

围绕我的主要问题的有用疑惑,据我所知,lit-html 是由 google 和 polymer 团队赞助的框架。这不是以某种方式迫使我在所有浏览器中对 运行 使用 polifylls 吗?假设我不关心浏览器不符合 webcomponents,为什么我需要一个框架?

这里是 open-wc 的维护者 :)

我们推荐 lit-html/element 的原因是因为它们是非常小的库,可以帮助您编写 Web 组件,而不是将您锁定在框架中。最终,LitElement 只是扩展了 HTMLElement,这使得它可以与其他 Web 组件甚至框架进行互操作。 LitElement 还减少了您必须为普通 Web 组件编写的样板文件。然而,我们并没有与它结婚,我个人非常喜欢香草组件解决方案。此外,我们的大多数(如果不是全部)工具都应该与 Web 组件兼容。

关于 polyfill; LitElement 将尝试尽可能使用现代标准(例如:可构建的样式表),如果不可用,则使用回退。加载 Web 组件 polyfill 取决于开发人员——而不是 litelement。如果您将我们的构建配置用于 rollup 或 webpack,您可以选择加载 polyfill。

希望能回答您的问题,欢迎随时与我们联系!