反应-没有值的传递道具

时间:2019-09-07 09:14:16

标签: reactjs react-native native-base

我将 NativeBase React Native 一起使用。

NativeBase按钮是通过以下方式创建的:

keyAlias=key
storeFile=c:/Users/%USERNAME%/key.jks

除了使用警告,您可以使用其他类型,例如信息成功

现在,我想基于道具创建那些按钮,并尝试执行以下操作:

Keystore file 'c:\Users\%USERNAME%\key.jks' not found for signing config 'release'.

但是我找不到办法,因为这个道具没有价值。

是否可以传递没有值的道具?

1 个答案:

答案 0 :(得分:2)

可以无值传递的组件道具基本上是boolean道具,并被解析为true

这两个相等:

<Button primay />
<Button primary={true} />

考虑到上述情况,您可以使用spread attribute语法:

<Button {...{ [this.props.type]: true }}>
    <Text>Hello</Text>
</Button>

编辑(详细说明):

假设您的this.props.type是“成功”,Button元素将解决此问题(因为使用了动态属性名称):

<Button {...{ success: true }}>

现在,当破坏对象(这三个点)时,您将获得其所有属性和相应的值作为元素的道具:

<Button success={true} >

正如我已经提到的,请看一下this explanation