聚合物 1.x 和 React
Polymer 1.x and React
我目前正在尝试将一些使用 Polymer v1 构建的 Web 组件集成到我们使用最新 React 版本(我写的是 16.3.2)构建的应用程序中。
在所有主要浏览器上集成工作正常(Chrome、Edge、Firefox)。
但是,在 Safari 上,我不断收到此错误:
TypeError: undefined is not an object (evaluating 'descriptor.get')
此错误是由 react-dom.development.js
脚本引发的(它也发生在生产构建中)。
我的直觉是,一旦 Polymer 被加载并开始与 dom 交互,它就会覆盖或以某种方式重叠 React 正在做的事情,但我真的找不到发生这种情况的位置或方式,也没有合适的解决方法。
任何人都可以提供更多关于为什么会发生这种情况的见解,或者在哪里寻找解决方案吗?
非常感谢!
使用的版本:
- Polymer 1.x(所有组件都更新到最新的1.x版本)
- 反应 16.3.2
- webcomponents-lite.min.js 0.7.24(与 Polymer 1.x 兼容的最新版本)
扩展标准 HTML 元素的 Polymer 组件与 ReactDOM 之间存在一些奇怪的冲突。
ReactDOM 最近更新到 16.4.0,这似乎修复了一些不良行为,尤其是自定义组件和第三方库。
重现您的环境并执行更新,问题似乎已解决。
我目前正在尝试将一些使用 Polymer v1 构建的 Web 组件集成到我们使用最新 React 版本(我写的是 16.3.2)构建的应用程序中。
在所有主要浏览器上集成工作正常(Chrome、Edge、Firefox)。 但是,在 Safari 上,我不断收到此错误:
TypeError: undefined is not an object (evaluating 'descriptor.get')
此错误是由 react-dom.development.js
脚本引发的(它也发生在生产构建中)。
我的直觉是,一旦 Polymer 被加载并开始与 dom 交互,它就会覆盖或以某种方式重叠 React 正在做的事情,但我真的找不到发生这种情况的位置或方式,也没有合适的解决方法。
任何人都可以提供更多关于为什么会发生这种情况的见解,或者在哪里寻找解决方案吗?
非常感谢!
使用的版本:
- Polymer 1.x(所有组件都更新到最新的1.x版本)
- 反应 16.3.2
- webcomponents-lite.min.js 0.7.24(与 Polymer 1.x 兼容的最新版本)
扩展标准 HTML 元素的 Polymer 组件与 ReactDOM 之间存在一些奇怪的冲突。
ReactDOM 最近更新到 16.4.0,这似乎修复了一些不良行为,尤其是自定义组件和第三方库。
重现您的环境并执行更新,问题似乎已解决。