【问题标题】:React-Redux mapStateToProps with dynamic (uid based) path具有动态(基于 uid)路径的 React-Redux mapStateToProps
【发布时间】:2020-07-21 18:02:36
【问题描述】:

我是 React 和 React-Redux 的新手。我正在尝试根据用户 ID 使用动态路径传递“mapStateToProps”。使用的基本代码如下:

const mapStateToProps = (state) => {

    console.log(state);
    console.log(state.firebase.auth.uid); <===== THIS DISPLAYS THE USERS ID, PROVING THE PATH EXISTS

    return {

        courses: `state.firestore.ordered.${state.firebase.auth.uid}`, <======= THIS LINE IS AN ERROR EVEN THOUGH THE PATH EXISTS

    }
}

如果我手动输入用户 ID,代码可以正常工作。假设用户 ID 为“12345”,然后将该行替换为

courses: state.firestore.ordered.12345, <======= THIS LINE WOULD WORK

任何关于为什么这不起作用的澄清以及使这项工作的替代方法将不胜感激!

【问题讨论】:

  • 课程:state.firestore.ordered(` nameofuserstable/${state.firebase.auth.uid} `);你能试试这个并检查一下吗,对我来说似乎有一个语法错误阻止了你想要的结果。
  • 感谢您的建议。不幸的是,这不起作用。

标签: reactjs react-redux mapstatetoprops


【解决方案1】:

如果要访问JS对象中的动态属性,需要使用方括号

    courses: state.firestore.ordered[state.firebase.auth.uid]

【讨论】:

  • 非常感谢! :) 我知道这很简单,并且正在尝试各种语法,但不是这个!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-15
  • 2018-02-03
  • 2020-02-16
  • 1970-01-01
  • 2019-09-20
  • 1970-01-01
相关资源
最近更新 更多