首页 > 解决方案 > 在 React 中使用绑定到来自 LitElement 的属性

问题描述

我有一个使用 litElement 构建的 Web 组件库。我们在 React 项目中使用这些组件,并且在使用一些属性绑定特性特性时遇到了问题。使用以下语法时,React 会引发错误。


使用.attr="" 和 ?attr="" https://lit-element.polymer-project.org/guide/templates可以在此处查看属性绑定示例

有没有办法在带有前缀“。”的 React 应用程序中使用这些属性绑定?或者 ”?”。我目前知道我们可以使用 JSON.stringify 将对象作为字符串传递给属性,但宁愿将对象作为属性而不是属性传递。

<my-cust-component .model="${this.someObj} ?mybool="false">

标签: javascriptreactjsweb-componentlit-element

解决方案


有没有办法在带有前缀“。”的 React 应用程序中使用这些属性绑定?或者 ”?”

简短的回答:没有。

第一个原因是这些语法是特定于光照的构造,您只能在其渲染上下文中使用(在 WebComponent 的模板内)。另一个坏消息是 React 对 DOM 和渲染的特殊视图使其成为最不兼容 WC 的框架之一:您将不得不依赖属性和引用来与您的 Web 组件通信,没有属性和事件绑定。

https://custom-elements-everywhere.com/#react


推荐阅读