我有一个文件叫 home.js
看起来是这样的:
import React, { useState } from 'react'
import { View, Text, FlatList, Card, TouchableOpacity } from 'react-native'
export const addProject = (flowerbed) => {
flowerbed.key = Math.random().toString()
setFlowerbed((currentFlowerbeds) => {
return [flowerbed, ...currentFlowerbeds]
})
setModalOpen(false)
}
export default function HomeScreen() {
const [flowerbeds, setFlowerbed] = useState(false);
return (
<View style={{ flex: 1, justifyContent: 'center', alignItems: 'center'}}>
<FlatList data={flowerbeds} renderItem={({ item }) => (
<TouchableOpacity >
<Card>
<Text>{ item.title }</Text>
</Card>
</TouchableOpacity>
)} />
</View>
)
}
在功能上 addProject
我需要调用函数 setFlowerbed
哪个在里面 HomeScreen
,但我得到一个错误:找不到变量:setflowerbed。我不能把函数 addProject
在…内 HomeScreen
因为我需要在另一个文件中访问它:
import { addProject } from './screens/home';
你能帮我修复这个错误吗?提前谢谢。
1条答案
按热度按时间de90aj5v1#
您需要传递回调函数以使用所选的函数,与模态函数相同
如果您将函数作为参数传递,那么当您调用它时,您是否将方法传递给他的作用域,因为您传递的是函数的引用,所以当您执行参数回调时,您将执行引用