gpt4 book ai didi

javascript - 从外部调用 React 组件

转载 作者:行者123 更新时间:2023-11-29 19:06:44 25 4
gpt4 key购买 nike

是否可以从外部调用 React 组件?例如

HTML

<div id='react-app'></div>

<button onClick=callReactModal()>PressME</button>

我想要调用方法的组件

let callReactModal = function () {
console.log('clicked');
//Navigation.sayHello();
}

class Navigation extends React.Component<any, any> {

constructor(props:any){
super(props);

this.state = {
language: {
lang: cookie.load('lang') || ''
}
};
this.click = this.click.bind(this);
}

sayHello = () => {
alert("Hello");
}
}

我必须从另一个组件调用 Modal,但我不知道如何实现。

尝试在类中调用更新state的方法并得到Warning: setState(...): Can only update a mounted or mounting component. 它需要打开模态(使用语义用户界面)

使用状态的方法

handleOpen = (e) => this.setState({
modalOpen: true,
})

模态部分

<Modal size='small'
open={this.state.modalOpen}
onClose={this.handleClose}
trigger={<a className="btn btn-base" onClick={this.handleOpen}>Login</a>}
closeIcon='close'>

感谢您的帮助!

最佳答案

虽然不是最佳实践。你必须在窗口中设置 callReactModal 函数

window.callReactModal = function () {
console.log('clicked');
//Navigation.sayHello();
}

实现它的更好方法是创建一个事件监听器,在触发时打开模式。

关于javascript - 从外部调用 React 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42282246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com