【问题标题】:React Native stylesheet merge: Spread types may only be created from object typesReact Native 样式表合并:传播类型只能从对象类型创建
【发布时间】:2020-02-07 09:17:58
【问题描述】:

我正在尝试将现有样式与我在 React Native 的常规 StyleSheet.create 方法中的额外样式合并:

const styles = StyleSheet.create({
    blurView:{
        ...StyleSheet.absoluteFill,
        borderRadius: 24
    },

});

但是我在...StyleSheet.absoluteFill 线上收到以下错误:

Spread types may only be created from object types.

我做错了什么?我知道我可以将数组传递给 style 道具,但我只是好奇为什么这不起作用。

【问题讨论】:

  • 这似乎是一个打字问题 - 我不确定你看到的 StyleSheet.absoluteFill 是什么类型,而且我对打字稿不是很熟悉,但也许你可以找到一种方法来明确告诉打字稿StyleSheet.absoluteFill 是一个对象,可能类似于 ...(StyleSheet.absoluteFill as object),

标签: typescript react-native


【解决方案1】:

StyleSheet.absoluteFill 更改为StyleSheet.absoluteFillObject 解决了这个问题。显然扩展运算符不能很好地处理注册样式。

【讨论】:

    猜你喜欢
    • 2018-07-21
    • 2019-09-10
    • 2021-08-02
    • 2018-12-13
    • 2020-08-02
    • 2020-05-26
    • 1970-01-01
    • 2021-12-31
    相关资源
    最近更新 更多