在React-Native中,我们应该使用纯组件还是无状态函数作为主要组件?
有两种方法:
import React from 'react';
import { Provider } from 'react-redux';
import store from './reducers/AppReducers';
import AppRoutes from './routes/AppRoutes';
// Pure Component
class App extends React.PureComponent {
render() {
return (
<Provider store={store}>
<AppRoutes />
</Provider>
);
}
}
// Stateless Function
const App = () => {
return (
<Provider store={store}>
<AppRoutes />
</Provider>
);
};
答案 0 :(得分:3)
如果您的组件很简单,请使用stateless
。对于简单的组件,不需要使用Pure Components
假设如果您有一个显示文本的组件并将其设为纯组件,则每次重新渲染时,都会首先进行浅表比较。 在这种情况下,重新渲染将是有效的,然后进行比较浅的比较。
由您决定组件是否可以进行比较比较浅或重新渲染的性能如何
提示:如果您有一个非常基本的组件,仅显示一些基本内容,请使用stateless
。
https://medium.com/groww-engineering/stateless-component-vs-pure-component-d2af88a1200b 在这里进行详细说明。
在您的情况下,我建议Pure Component
因为它包含您的整个应用程序,因此重新渲染会比浅表比较昂贵