MobX の観測可能な配列があり、複数の要素を lodash のremoveで削除したいと考えています。これにより、配列内のすべての要素が再レンダリングされます。
const array = observable([1,2,3,4,5,1]);
const App = observer(() => {
console.log('Rendering...');
return (
<div>
{ array.map(e => <div> {e} </div>)}
</div>
);
});
ReactDOM.render(
<App />,
document.getElementById('app')
);
のすべての出現を削除しようとすると1
、Rendering...
要素ごとに 1 回ログに記録されます。
_.remove(array, num => num === 1);
> "Rendering..."
> "Rendering..."
> "Rendering..."
> "Rendering..."
> "Rendering..."
> "Rendering..."
一度だけ再レンダリングするようにするにはどうすればよいですか?