【发布时间】:2014-12-01 11:49:33
【问题描述】:
我是 react.js 的新手,非常感谢任何帮助。
我有这个:https://jsfiddle.net/rzjyhf91/
其中我制作了 2 个组件:一个图像和一个按钮。
目标是通过单击按钮删除图像,我为此使用unmountComponentAtNode,但它不起作用:
var App = React.createClass({
render: function() {
return (
<div><MyImage /><RemoveImageButton /></div>
);
}
});
var MyImage = React.createClass({
render: function() {
return (
<img id="kitten" src={'http://placekitten.com/g/200/300'} />
);
}
});
var RemoveImageButton = React.createClass ({
render: function() {
return (
<button onClick={this.handleClick}>remove image</button>
)
},
handleClick: function(){
React.unmountComponentAtNode(document.getElementById('kitten'));
}
});
React.render(<App />, document.body);
如何从另一个组件中移除一个 React 组件?
【问题讨论】:
-
哇,这似乎是一个错误......你应该这样做:然后在“someid”上卸载......但这也不起作用。我认为您必须强制更新() App 组件或其他东西......
-
我不知道答案,但我会将图像设置为
App的状态,然后更改/删除触发重新渲染的状态值。
标签: javascript reactjs