如何在我的 React Native 函数组件中为函数传递参数?
How can I pass a param for a function inside my React Native Function Component?
我有一个 Picker 组件,其中填充了来自本地领域数据库的数据,该组件具有一个函数,可以接收数据库模式的名称作为参数。我想要做的是,不是在函数中写入模式的名称,而是将其作为 prop 或参数接收,这样我就可以使用相同的组件来显示具有不同信息的选择器。
这是我的代码:
const PickerDB: React.FC<PickerProps> = (props) => {
const [data, setData] = useState([]);
async function loadData() {
setData(await GetDataFromDB('source')); // this is what I want to modify
}
useEffect(() => {
loadData();
}, [])
let values = data.map((data) => {
return (
<Picker.Item
label={data.description}
value={data.id}
key={data.id}
/>
)
})
return (
<Picker
selectedValue={props.selectedValue}
style={{ height: 45, width: "70%" }}
onValueChange={props.onValueChange}
>
{values}
</Picker>
);
由于我的应用程序中有其他功能,我需要使用 React.FC<PickerProps>
创建我的组件。
我想这样使用我的组件:
<PickerDB source={'schemaName'} />
这是您需要做的:
async function loadData(source) {
setData(await GetDataFromDB(source)); // this is what I want to modify
}
useEffect(() => {
if (props.source) {
loadData(props.source);
}
}, [props.source]);
我有一个 Picker 组件,其中填充了来自本地领域数据库的数据,该组件具有一个函数,可以接收数据库模式的名称作为参数。我想要做的是,不是在函数中写入模式的名称,而是将其作为 prop 或参数接收,这样我就可以使用相同的组件来显示具有不同信息的选择器。
这是我的代码:
const PickerDB: React.FC<PickerProps> = (props) => {
const [data, setData] = useState([]);
async function loadData() {
setData(await GetDataFromDB('source')); // this is what I want to modify
}
useEffect(() => {
loadData();
}, [])
let values = data.map((data) => {
return (
<Picker.Item
label={data.description}
value={data.id}
key={data.id}
/>
)
})
return (
<Picker
selectedValue={props.selectedValue}
style={{ height: 45, width: "70%" }}
onValueChange={props.onValueChange}
>
{values}
</Picker>
);
由于我的应用程序中有其他功能,我需要使用 React.FC<PickerProps>
创建我的组件。
我想这样使用我的组件:
<PickerDB source={'schemaName'} />
这是您需要做的:
async function loadData(source) {
setData(await GetDataFromDB(source)); // this is what I want to modify
}
useEffect(() => {
if (props.source) {
loadData(props.source);
}
}, [props.source]);