- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
页面中包含两个 JS 文件,分别为 utility.js 和 utility1.js
utility.js 的代码
var HelloWorld = React.createClass({
render: function() {
return (
<p>
Hello, <input type="text" ref="mytestinput" placeholder="Your name here" />!<br />
It is {this.props.date.toTimeString()}
</p>
);
}
});
setInterval(function() {
React.render(
<HelloWorld date={new Date()} />,
document.getElementById('container')
);
}, 1000);
utility1.js 的代码
var MyComponent = React.createClass({
handleClick: function() {
// Explicitly focus the text input using the raw DOM API.
React.findDOMNode(HelloWorld.refs.mytestinput).focus();
},
render: function() {
// The ref attribute adds a reference to the component to
// this.refs when the component is mounted.
return (
<div>
<input type="text" ref="myTextInput" />
<input
type="button"
value="Focus the text input"
onClick={this.handleClick}
/>
</div>
);
}
});
React.render(
<MyComponent />,
document.getElementById('container1')
);
这里的问题是我想关注 utility1.js 中 utility.js 的 HelloWorld 组件的输入。我看到他们是一种用于安装组件的 findDOMNode 方法。但这段代码对我不起作用。有人可以试试这个 JS Fiddle here并让我知道可能的解决方案。
最佳答案
您需要创建全局事件系统才能允许这两个组件 communicate with each other如果他们没有亲子关系。以下是有关 global event system 的更多信息
解决方案如下:jsfiddle
var CustomEvents = (function() {
var _map = {};
return {
subscribe: function(name, cb) {
_map[name] || (_map[name] = []);
_map[name].push(cb);
},
notify: function(name, data) {
if (!_map[name]) {
return;
}
// if you want canceling or anything else, add it in to this cb loop
_map[name].forEach(function(cb) {
cb(data);
});
}
}
})();
关于javascript - ReactJS中已挂载组件的findDOMNode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30497163/
我正在尝试使用函数作为组件内的 prop,并且该组件是另一个组件的子组件。但该功能不起作用。?我可以知道为什么吗?这是我在控制台中收到的警告。 Warning: findDOMNode is depr
Draggable 包在严格模式下导致错误: Warning: findDOMNode is deprecated in StrictMode. findDOMNode waspassed an in
我试图用 material-ui 和 React 制作一个选择菜单 const SelectLevelButton = forwardRef((props, ref) => { const [st
我被指派修复一些失败的 Jest 测试。这是一个例子: 这是 checkboxGroup.spec.js: import React from 'react'; import ReactDOM fro
我有 /* @jsx React.DOM*/ var Login = React.createClass({ Validate: function(){ debugger;
我有一个使用 findDOMNode() 的旧代码。 这是我的代码,其中 someComponent1 和 Expand 已导入。 在这里,我有些怀疑我用 findDOMNode() 编写的代码是否工
我创建了一个 HOC 来监听其包装组件外部的点击,以便包装组件可以根据需要进行监听和 react 。 HOC 看起来像这样: const addOutsideClickListener = (Wrap
我正在使用 antd 并且看到此错误 findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of DO
我知道有React.findDOMNode(component).value/focus() 。我正在寻找所有可以与React.findDOMNode一起使用的方法. 例如,我有一个 标签,我尝试过
出于某种原因,我无法使用 React.findDOMNode 函数。浏览器提示类型错误,说 React.findDOMNode 不是函数。这是发生这种情况的代码: var React = requir
我正在使用 ReactJS 和 Flux 构建一个网络应用程序,我正在尝试使用 findDOMNode 方法获取当前 div 的节点,但出现下一个错误: Uncaught TypeError: Rea
我正在使用 react-bootstrap 中的工具提示覆盖,但在 StrictMode 中不推荐使用错误 findDOMNode。根据 documentation使用overlaytrigger的函
我目前正在 Jest 测试 React 组件,组件的内联样式会根据不同的 props 值而改变。 这是一个关于我想做的事情的例子: let firstChild = TestUtils.findRen
“ react ”:“^16.13.1” “ react 过渡组”:“^4.3.0” 大家好。 我遇到了 findDOMNode 警告,在互联网上找不
我不完全理解,但显然it isn't recommended to use findDOMNode() . 我正在尝试创建拖放组件,但我不确定应该如何访问组件变量中的引用。这是我目前拥有的示例: co
谁能告诉我两者有什么区别 React.findDOMNode(this.refs.email).value 和 this.refs.email.getDOMNode().value 他们在做同样的事情
我正在尝试研究如何使用 typescript 和 react js。我关注这个link我成功地安装了文件。这是 package.json { "name": "proj", "version"
我需要通过深层嵌套组件进行事件冒泡,我尝试做如下的事情 import {ReactDOM,render, unmountComponentAtNode} from 'react-dom';
我正在关注 React Tutorial并卡在如何使用 React.findDOMNode 上. 这是我的代码: export class CommentForm extends React.Comp
大家好,我只是想在路由器转换期间使用 Refs 来定位组件中的元素。目前,来自 React Transition Group 的 onEnter、onExit 和 addEndListener 事件已
我是一名优秀的程序员,十分优秀!