我想使用React.memo在react native中进行优化。
import React from "react";
import { View, Text } from "react-native";
const Memo = React.memo(function() {
return (
<View>
<Text>Ok</Text>
</View>
);
});
class Demo extends React.Component {
render() {
return <Memo />;
}
}
export default Demo;
它给出以下错误:
TypeError:未定义不是函数(计算
render(nextProps)
)。 该错误位于: 在演示中(at renderApplication.js:34) 在RCTView中(位于View.js:44)
我们可以在React native中使用React.memo吗?
答案 0 :(得分:1)
const MyFunctionComponent = ({text}) => <Text>{text}</Text>;
MyFunctionComponent.displayName = 'HarmlessComponent';
MyFunctionComponent.propTypes = {text: PropTypes.string.isRequired};
export default React.memo(MyFunctionComponent);
答案 1 :(得分:0)
您要记住的“组件”不是正确的react组件,没有传递任何道具。 react circle
HOC也仅适用于功能组件,PinCircleView
适用于基于类的组件
您需要确保使用的是引入memo
HOC的最新版本的react,并按如下方式使用它:
PureComponent