javascript - 如何在 ReactJS 中访问从 one.js 到 two.js 的 isValid 变量?
问题描述
我在以下问题中遇到问题下面是存储在“one.js”中的代码
const One= (props) => {
const [isValid, setIsValid]=useState(true);
return(
<div>Hello</div>
);
}
export default One;
下面是存储在“two.js”中的代码
import One from './one.js';
var Two=()=>{
return(
<div>Two</div>
);
}
export default Two;
解决方案
你不能从 reactjs 中的另一个组件访问组件的状态
您必须为此目标学习和使用 redux 或使用钩子
但是如果您想在纯 reactjs 中执行此操作,则必须使一个组件成为另一个组件的父组件,并将状态作为道具发送给子组件
像这样:
//one.jsx
class one extend React.Component{
constructor(props){
super(props)
this.state = {
text: ""
}
}
render(){
return <Two props={this.state.text} />
}
然后在 two.jsx 组件中使用它
class Two extend React.Component{
render(){
<div>{this.props.text}</div>
}
}
推荐阅读
- reactjs - 使用 react 样式的组件将 .png 徽标添加到我的导航栏
- javascript - Angular Style DOM 元素问题
- javascript - 将材质 UI 卡设置为最大高度
- jquery - 点击按钮滑动div
- leaflet - 如何在带有传单的 next.js 应用程序中使用我的 GeoJSON 数据?
- reactjs - 防止 context.consumer 重新渲染组件
- python - 无法使用 python 为 libsass 设置 output_style 以在每次部署时编译 SASS
- r - 在 plotly 和 ggplot2 中放置相同的颜色
- swift - Xcode 11 动作编辑器?如何调用?
- authentication - JMeter 中用于 Microsoft 登录的 Autorization Bearer 的解决方法(适用于具有特定组织服务帐户的单页应用程序)