Reactjs 如何将道具传递给JS处理程序?

Reactjs 如何将道具传递给JS处理程序?,reactjs,Reactjs,如何将道具传递给JS处理程序? 这是我的密码 var CommentForm = React.createClass({ handleAuthorChange: function (e) { this.setState({ author: e.target.value }); }, handleTextChange: function (e) { this.setState({ text: e.targe

如何将道具传递给JS处理程序? 这是我的密码

var CommentForm = React.createClass({ 
     handleAuthorChange: function (e) {
            this.setState({ author: e.target.value });
        },
        handleTextChange: function (e) {
            this.setState({ text: e.target.value });
        },
    });
在渲染方法内部


试试这样的

handleAuthorChange: function (e,props) {
            this.setState({ author: e.target.value });
            const myProp=props;
        }
var CommentForm = React.createClass({
    getInitialState: function () {
        return { author: '', text: '' };
    },
    handleAuthorChange: function (e) {
        this.setState({ author: e.target.value });
    },
    handleTextChange: function (e) {
        this.setState({ text: e.target.value });
    },
    handleSubmit: function (e) {
        e.preventDefault();
        var author = this.state.author.trim();
        var text = this.state.text.trim();
        if (!text || !author) {
            return;
        }
        this.props.onCommentSubmit({ author: author, text: text });
        this.setState({ author: '', text: '' });
    },
        render: function () {
            return (
                <form className="commentForm" onSubmit={this.handleSubmit}>
                    <input
                        type="text"
                        placeholder="Your name"
                        value={this.state.author}
                        onChange={this.handleAuthorChange}
                    />
                    <input
                        type="text"
                        placeholder="Say something..."
                        value={this.state.text}
                        onChange={this.handleTextChange}
                    />
                    <input type="submit" value="Post" />
                </form>
            );
        }
});
不要再使用这个了,看看它们是否可以通过this.props访问。为什么不直接使用this.props呢?
var CommentForm = React.createClass({
    getInitialState: function () {
        return { author: '', text: '' };
    },
    handleAuthorChange: function (e) {
        this.setState({ author: e.target.value });
    },
    handleTextChange: function (e) {
        this.setState({ text: e.target.value });
    },
    handleSubmit: function (e) {
        e.preventDefault();
        var author = this.state.author.trim();
        var text = this.state.text.trim();
        if (!text || !author) {
            return;
        }
        this.props.onCommentSubmit({ author: author, text: text });
        this.setState({ author: '', text: '' });
    },
        render: function () {
            return (
                <form className="commentForm" onSubmit={this.handleSubmit}>
                    <input
                        type="text"
                        placeholder="Your name"
                        value={this.state.author}
                        onChange={this.handleAuthorChange}
                    />
                    <input
                        type="text"
                        placeholder="Say something..."
                        value={this.state.text}
                        onChange={this.handleTextChange}
                    />
                    <input type="submit" value="Post" />
                </form>
            );
        }
});