导出默认的本机组件

时间:2018-12-06 10:37:34

标签: reactjs react-native checkbox

对于我的解决方案,我希望用户从我的库中获取所有组件。

示例:import Checkbox from 'MyLibrary';

但是对于本地用户,我不想让所有组件都属于我自己。至少不是现在。这就是为什么我希望他们引用我的库,所以当我更改/编写组件时,它将在它们的末尾自动更新。

例如,一个复选框。有一个默认的“本地反应”复选框(https://facebook.github.io/react-native/docs/checkbox

我想将此默认组件导出到我的组件中。

我尝试过类似的事情:

export { Checkbox as default } from 'react-native';

import { Checkbox } from 'react-native';

export default Checkbox;

import React from 'react';
import { Checkbox as ReactCheckbox } from 'react-native';

const Checkbox = (...props) => <ReactCheckbox {...props} />;

export default Checkbox;

但是那没有用。有什么建议吗?

编辑:我在导入时犯了一个错误,它是CheckBox而不是Checkbox ...

3 个答案:

答案 0 :(得分:0)

是复选框,不是复选框,是吧!

答案 1 :(得分:0)

我不太确定,但是,当我尝试您的代码时,它也不适用于我的代码。但是,您可以这样做:

import { TextInput as myTextInput } from 'react-native';

但是,当我在博览会应用程序上检查了这一点时:

import { CheckBox as myCheckBox } from 'react-native';

据此,我认为原生的反应不支持Expo应用程序上的CheckBox。但是,如果您使用React Native ElementsNative Base之类的库。然后,您可以像这样导入复选框。

import { CheckBox as myCheckBox } from 'react-native-elements';

也许这个Snack可以为您提供帮助。 快乐的编码:)

答案 2 :(得分:0)

如果我对您的理解正确,那么您想重新导出React / Community复选框作为您的组件,并在将来将其替换为您自己的组件吗?

本机复选框组件仅在Android中可用,因此您必须使用从UI-Kitten /本机基础/反应本机元素构建的社区。

首先浏览并选择您的UI库并进行安装。然后,您可以从相应的库中导入复选框组件,然后将其导出,直到编写自己的组件为止。

这将起作用

import { CheckBox } from 'react-native-elements';
export default CheckBox;

如果要使用默认属性或样式包装组件,则可以执行以下操作

import { CheckBox } from 'react-native-elements';

export default function(props) {
    const yourProps = {
        checkedIcon: <Image source={require('../checked.png')} />,
        uncheckedIcon: <Image source={require('../unchecked.png')} />
    };
    return (
        <CheckBox {...yourProps} {...props} />
    );
}