Provider 是 react-redux 库提供的,redux 本身并不强制依赖它,然而问题是 redux 本身也不依赖 react。作为一个纯粹的 data layer,redux 并不关心你用什么视图引擎,所以如何访问 store 是你自己需要考虑的事情,redux 并不会约束你一定要怎么做。
react-redux 是官方提供的解决方案,Provider 本身并没有做很多事情,只是把 store放在 context 里罢了。实际上如果你用 react-redux,那么连接视图和数据层最好的办法是使用 connect 函数。本质上 Provider 就是给 connect 提供 store 用的。
<View style={styles.formItem}>
<Text style={styles.formLabel}>姓名</Text>
<TextInput
style={styles.formInput}
maxLength={16}
placeholder="请输入姓名"
value={form.name}
onChangeText={value => setForm({...form, name: value})}
/>
</View>
<View style={Common.footerButton}>
<Button text="保存" onPress={handleSubmit} />
</View>
值存到了setForm里面,取的时候直接从这里面取出来。
const handleSubmit = () => {
setForm({
...form,
});
console.log('AAAAAA', form);
console.log('保存!');
};
网友评论