先说一说context是干什么的:
跨层级通信
一般组件通信的方法都是通过props来传递,不过这种方法当有了第三级或往后孙孙组件的时候就显得比较繁琐。以及不好修改。这时我们可以使用context来管理这些数据,不管多少层级都能让想要使用这些数据的组件能拿到。还有别的方法,mobx或redux。这些可以自行了解
说一下文件目录以及思路:
创建index文件作为父组件,child1组件为子组件,child2为子子组件。同级下创建一个store.js中存放数据和创建context。
index中呢引入child1组件,child1组件呢引入child2组件。我们现在要做的就是不使用props在child2中获取index父级的数据。
store.js :
可以分为三步:1.引入React。2.创建数据。3.创建导出context
import React from 'react';
这里我们可以定义数据格式
export const Resume = {
base: {
name: '',
age: ''
},
exp: {
year: '',
job: ''
},
lists: [],
}
通过createContext创建context并导出
export const ResumeContext = React.createContext(Resume);