reactjs - 如何在移动菜单中使用 redux 切换嵌套链接组件
问题描述
我创建了一个响应式菜单,它共享一个导航组件,其中嵌套了一个链接组件。所以工具栏>导航>链接。我还有一个侧边栏(移动菜单),它共享导航和链接组件:侧边栏 > 导航 > 链接。
所以我在切换关闭和菜单图标以及显示和隐藏不使用 Redux 的移动侧边栏方面取得了一些成功。但是我意识到嵌套,在父子之外传递道具对我不起作用,所以我决定尝试 Redux,但设置有点复杂,我尝试使用 console.log 来查看发生了什么,但操作没有'似乎没有订阅或某些东西没有连接到更新状态。
有人可以帮我看看发生了什么吗?
项目的编辑器在这里,虽然上面有 ES5/ES6 转换问题,但我尝试在那里安装 Babel,但不确定如何在 Stackblitz 上解决。那里的代码和文件结构: https ://stackblitz.com/edit/react-xey1dv
解决方案
首先,您必须更改 mapStateToProps 以收听特定的道具值,例如减速器中的“isOpened”。
const mapStateToProps = state => {
return {
isOpened: state.isOpened
};
};
然后在 toggleNav 中你应该使用 'this.props' 检查这个对象的状态,
if (!this.props.isOpened) {
openNavigation();
console.log('active');
}
else {
closeNavigation();
console.log('not-active');
}
推荐阅读
- verilog - 是否可以在 for 循环中使用 if/else 条件?
- c++ - 无法在 Mosquitto MQTT Broker 插件中访问 struct mosquitto 的元素
- python - 验证 s 数字列表是否是斐波那契数列的一部分
- android - 加载 build-info.xml 时生成错误异常
- docker - 如何使用 Docker 创建分布式 Spark 集群
- javascript - 循环遍历 ajax 值
- c# - Visual Studio 2017 Professional 中的 WebTest 项目
- reactjs - 类别列表导航在 React App 中不起作用
- gnupg - Gpg2 库依赖树
- c++ - 初级 C++ 图形(越过控制台)?