Javascript maxFontSizeMultiplier道具全部<;Text/>;

Javascript maxFontSizeMultiplier道具全部<;Text/>;,javascript,reactjs,react-native,Javascript,Reactjs,React Native,如何为应用程序中的所有组件设置propmaxFontSizeMultiplier={1},而不必创建自定义组件?围绕创建包装组件。我不使用react native,所以如果有明显的不兼容性,就转换它们 此包装约定允许您自定义本机组件,而无需操作内置/lib组件的源代码 const TextWrapped = (props) => { return( <Text {...props} maxFontSizeMultiplier={1} /> );

如何为应用程序中的所有
组件设置prop
maxFontSizeMultiplier={1}
,而不必创建自定义组件?

围绕
创建包装组件。我不使用react native,所以如果有明显的不兼容性,就转换它们

此包装约定允许您自定义本机组件,而无需操作内置/lib组件的源代码

const TextWrapped = (props) => {
    return(
        <Text {...props} maxFontSizeMultiplier={1} />
    );
}

export default TextWrapped;
constTextWrapped=(道具)=>{
返回(
);
}
导出默认文本包装;

您可以通过以下代码实现目标,这些代码需要放在“index.js”中


检查此小部件。如果父组件未指定此.props.maxFontSizeMultiplier,则将使用defaultProps确保其具有值

import { Text } from 'react-native';

const TextWrapper = (props) => {
    return <Text {...props} />
}

TextWrapper.defaultProps = {
  maxFontSizeMultiplier: 1,
};

export default TextWrapper;
从'react native'导入{Text};
常量文本包装器=(道具)=>{
返回
}
TextWrapper.defaultProps={
maxFontSizeMultiplier:1,
};
导出默认TextWrapper;

不幸的是,没有办法对它们进行全局更改,因此@SterlingArcher的答案可能是最好的方法,在使用
Text
的任何地方使用
Text
,以确保该
TextWrapped
组件能够使用所有
Text
道具,您应该像这样更新它:
consttextwrapped=props=>()
要允许覆盖
maxFontSizeMultiplier
,请将它放在
{…props}
之前,像这样:
import { Text } from 'react-native';

const TextWrapper = (props) => {
    return <Text {...props} />
}

TextWrapper.defaultProps = {
  maxFontSizeMultiplier: 1,
};

export default TextWrapper;