【发布时间】:2021-01-29 00:25:57
【问题描述】:
这是我的第一个反应应用程序,我不确定如何禁用导入的按钮。 我有一个组件按钮,我将其导入到父组件中
import React, { Component } from "react";
import "../../index.scss";
class Submit extends Component {
render() {
return (
<button className="button"
onClick={() => this.props.onClick()}>
SUBMIT
</button>
);
}
}
export default Submit;
在渲染它的组件中如下
renderSubmit() {
return (
<Submit
onClick={() => this.submitForm()}
/>
);
}
render() {
return (
<div className="table">
<div className="table-actions">
{this.renderRefresh()}
{this.renderSubmit()}
</div>
</div>
);
}
}
我试图从原始组件中将类设置为禁用,但它依赖于状态属性并且无法识别它。
import React, { Component } from "react";
import "../../index.scss";
class Submit extends Component {
render() {
return (
<button className="button"
disabled={this.state.start}
onClick={() => this.props.onClick()}>
SUBMIT
</button>
);
}
}
export default Submit;
如何将禁用状态设置为状态属性?
【问题讨论】:
-
我想你会在
onClick()中设置状态,但是,我没有看到这个功能?能否请您添加它,以便我看一下? -
没有 onclick 功能...在父组件中调用 this.submitForm()。这是问题吗?我把教程的组件拿出来了,不太清楚onclick是干什么用的
-
如果希望按钮在点击后被禁用,则需要将其编码为
onClick={() => this.props.onClick()}>。onClick()在哪里?为什么不尝试将此函数onClick() {this.setState({'start':true});}添加到您的组件中,然后将onClick={() => this.onClick()}添加到您的 onClick 调用者,因为它不再是道具了。
标签: reactjs react-native react-redux react-router