这是我的模态组件:
'use strict';
import React from 'react';
const Modal = React.createClass({
handleOverlayClick () {
this.setState({ showModal: false });
},
shouldComponentUpdate (newProps, newState) {
return newState.showModal !== this.props.showModal;
},
render () {
const style = {
display: (this.props.showModal) ? 'block' : 'none'
};
console.log(style);
return (
<div className="modal-overlay" style={style}>
<div className="modal-container" onClick={this.handleOverlayClick}>
<div className="modal-content modal-input">Hello, world</div>
</div>
</div>
);
}
});
module.exports = Modal;我就是这样称呼它的:
'use strict';
import React from 'react';
import ReactDOM from 'react-dom';
import SplitButton from './split-button';
import EmmaButton from './emma-button';
import SelectEmailModal from './modals/email-select.modal';
const AddActionBtn = React.createClass({
onClick () {
return "#";
},
handleSendMailing () {
return ReactDOM.render(<SelectEmailModal showModal={true} />, document.getElementById('modals'));
},
handleWait() {
console.log("WAIT");
return "#";
},
render () {
return (
<SplitButton primaryLabel="ADD ACTION ▼" primaryAction={this.onClick}>
<ul>
<li><span onClick={this.handleSendMailing}>Send mailing</span></li>
<li><span onClick={this.handleWait}>Wait</span></li>
</ul>
</SplitButton>
);
}
});
module.exports = AddActionBtn;我是个新手,所以请原谅我在这里的无知。只是想简单地显示/隐藏一个模态
发布于 2016-05-03 01:20:36
也许是错误在这里?
display: (this.props.showModal) ? 'block' : 'none'
showModal是一种状态,而不是一种支柱,所以:this.state.showModal
https://stackoverflow.com/questions/36994090
复制相似问题