问题标签 [react-dom]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 捕获 React Diff 并手动修补它们
React/react-dom 是否有能力让用户手动比较两个 dom,获取 diff,并手动将 diff 应用到 dom?
就像现在发生的那样,似乎差异和修补的过程是在内部完成的,但我希望单独进行。
javascript - this.refs.something 返回“未定义”
我有一个ref
定义了 a 并最终呈现到页面中的元素:
我想访问 DOM 元素属性之类的offset...
东西。然而,我不断得到undefined
,我不知道为什么。经过一番搜索,很明显refs
只适用于一个文件,但除了这一页之外,我没有在任何地方使用它。我这样说是为了记录它:
console.log('REFS', this.refs.russian);
这可能是什么原因造成的?
reactjs - 导入后 React 未定义
在尝试启动我的应用程序时,我发现 React 或 ReactDOM 都未定义。这是使用 es2015import
语法时使用 babel 预处理的。使用常规require
它加载正常。片段是这样的:
实际回溯如下所示:
这看起来像一个反应错误,但是在违规行(之前ReactDOM
)中使用断点并尝试评估两者React
或ReactDOM
返回undefined
,对于 $ 或同一模块中的任何其他导入都不相同。
是什么赋予了?
reactjs - 使用 ReactDOM.render() 而不是在其容器组件中重新渲染应用程序——反模式?
我有一个单一对象状态驱动的应用程序,其状态分派/订阅逻辑将与 React '流' 分开(即没有像 React-Redux 绑定这样的助手)。
当状态改变时,我的应用会重新渲染。
以下两种实现之间有什么区别,或者有任何反模式问题吗?(很抱歉让我不使用 JSX 的任何人感到不安)
对...
第一个强制应用程序范围从“外部”重新渲染,即使用 ReactDOM。第二个在容器应用程序中做同样的事情。
我做了一些性能测试,实际上并没有看到任何区别。我会遇到问题吗?多次点击 ReactDOM.render() 是个问题吗?
我知道有些人会评论说这两种方法都可能很昂贵,因为它们都在重新渲染整个应用程序(这不是 React 的用途;)),但这超出了这个问题的范围。
reactjs - 未捕获的 ReferenceError:未定义 React
嗨,我知道这种类型的问题已经被问过很多次了,但我无法得到答案。
我正在尝试编写一个 React hello world 示例。我只有两个文件,一个是 app.jsx,另一个是 homepage.jsx。我正在使用 webpack 来捆绑文件。
但是当我运行代码时,我得到Uncaught ReferenceError: React is not defined
我的 homepage.jsx 看起来像这样
我的 app.js 看起来像这样
在浏览器中,它会在第 7 行抛出Uncaught ReferenceError: React is not defined
,即我需要主页的地方。
但是当我在 app.jsx 中添加 var React = require('react') 时,它工作正常。
我不明白这一点。我在 homepage.jsx 中包含了 react,我正在使用它。在 app.jsx 我只需要 react-dom 因为我不使用 React。那么为什么它在 app.jsx 中给出错误。
请帮忙!!
reactjs - React:映射 ReactDOM.findDOMNode(this) 的子节点
我想得到 ReactDOM.findDOMNode(this) 的孩子,这样我就可以根据 refs 设置样式。具体显示 none 一些 refs 和 yes 其他。
我以为我可以
错误响应:
PS 也尝试在 createFragment() 中包装 blockNode 但不好
reactjs - 如何获取孩子的DOM节点
我想访问父组件中定义的子组件的 DOM 节点。在下面的示例中,我尝试了“try1”和“try2”两种方法,但都不起作用。如何获取“theDiv”参考的 DOM 节点?
reactjs - 如何使用 ReactDOM 直接渲染 React 组件(ES6 API)?
我正在使用React 的 ES6 类 API(通过使用 TypeScript)并希望React.Component
使用ReactDOM.render()
.
以下代码有效:
现在,鉴于构造函数在 中的显式类型react.d.ts
,我假设我可以传递填充初始属性的 MyCustomProps 对象的一个实例(如在上面的代码中所做的那样)。但是如何在没有 JSX/TSX 语法的情况下直接渲染组件呢?
以下不起作用:
我知道我可以使用 JSX 语法作为解决方法,但由于我的MyCustomProps
对象非常大,我不想重复MyCustomProps
对象的每个成员。
react-dom - 使用 ReactDOM 作为独立引擎?
在这篇文章中提到了使用 Facebook 的 ReactDOM 作为一个独立的引擎;在没有 React 组件的情况下使用它。但我没有找到任何关于如何做到这一点的文档。
这可能吗?
如果没有 React 组件,是否有任何文档说明如何提供 ReactDOM.render?
谢谢。
reactjs - `componentDidMount` 究竟是什么时候触发的?
这是我在使用 React 时反复出现的问题。该componentDidMount
方法保证在第一次渲染组件时被触发,因此它似乎是进行 DOM 测量(如高度和偏移)的自然场所。但是,在组件生命周期的这个阶段,我多次收到错误的样式读数。该组件在DOM 中,当我与调试器中断时,它还没有在屏幕上绘制。对于宽度/高度设置为 100% 的元素,我遇到了这个问题。当我进行测量时componentDidUpdate
- 一切正常,但此方法不会在组件的初始渲染时触发。
所以我的问题是 - 什么时候被componentDidMount
触发,因为在所有浏览器绘制完成后它显然没有被触发。
编辑: 这个 Stackoverflow 问题涉及相同的主题:
它还引用了这个解释发生了什么的github 对话