首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >错误:未定义不是对象(计算'selectedCategory.title')。有人知道如何解决这个问题吗?我用的是旧语法吗?

错误:未定义不是对象(计算'selectedCategory.title')。有人知道如何解决这个问题吗?我用的是旧语法吗?
EN

Stack Overflow用户
提问于 2022-07-09 12:53:47
回答 1查看 12关注 0票数 0

这是我的代码:

代码语言:javascript
运行
复制
 import React from "react";
    import { View, Text, Button, StyleSheet, Platform } from "react-native";

    import { CATEGORIES } from "../data/dummy-data";
    import Color from "../constants/Color";

,这些都是我的导入,

代码语言:javascript
运行
复制
    const CategoryMealScreen = (props) => {

,这是的主要功能

代码语言:javascript
运行
复制
     const catId = props.navigation.getParam("categoryId");

      const selectedCategory = CATEGORIES.find((cat) => cat.id === catId);

选定类别是文本中使用的常量。

代码语言:javascript
运行
复制
      return (
        <View style={styles.screen}>
          <Text>The Category Meal Screen!</Text>
          <Text>{selectedCategory.title}</Text>
          <Button
            title="Go to Details"
            onPress={() => {
            props.navigation.navigate({
            routeName: "MealDetail",
          });
        }}
      />
      <Button
        title="Go Back"
        onPress={() => {
          props.navigation.pop();
        }}
      />
    </View>
  );
};

CategoryMealScreen.navigationOptions = (navigationData) => {
  const catId = navigationData.navigation.getParam("categoryId");

  const selectedCategory = CATEGORIES.find((cat) => cat.id === catId);

  return {
    headerTitle: selectedCategory.title,
    headerStyle: {
      backgroundColor: Platform.OS === "android" ? Color.primaryColor : "",
    },
    headerTintColor: Platform.OS === "android" ? "white" : Color.primaryColor,
  };
};

这是我正在使用的样式表

代码语言:javascript
运行
复制
const styles = StyleSheet.create({
  screen: {
    flex: 1,
    justifyContent: "center",
    alignItems: "center",
  },
});

export default CategoryMealScreen;

,我想问题可能是来自变量选择的类别,但我不知道如何解决它,,请帮助

EN

回答 1

Stack Overflow用户

发布于 2022-07-09 17:47:06

错误告诉您,您的selectedCategory变量中没有对象。最明显的原因是您的find没有找到匹配的。

如果您从虚拟数据中console.log您的CATEGORIES,从params中获取您的catId,您应该能够看到出了什么问题。可能是缺少catId,还是没有一个类别具有该ID。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72921525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档