【问题标题】:Getting Undefined while fetching particular key value from get method using Lodash使用 Lodash 从 get 方法获取特定键值时获取未定义
【发布时间】:2019-07-19 07:43:27
【问题描述】:

我有以下数据数组。

const filterToolTips = [{
    remember_tip: 'some remember tip data.'
  },
  {
    background_tip: 'some background tip data'
  },
  {
    remember_on: 'some remember on tip data'
  },
  {
    remember_off: 'some remember off data.'
  },
  {
    background_on: 'some background on data '
  }
];

我正在尝试为不同的用例获取每个关键文本。 所以,我使用lodash,但是,它显示未定义。

const toolText = get(filterToolTips,'remember_tip');
console.log('toolTipText', toolTipText); // 'toolTipText', undefined

我也试过find

有什么建议吗?

【问题讨论】:

    标签: react-native dictionary filter lodash


    【解决方案1】:

    使用_.find()_.has() 查找具有请求键的对象,然后使用_.get() 取值:

    const filterToolTips = [{"remember_tip":"some remember tip data."},{"background_tip":"some background tip data"},{"remember_on":"some remember on tip data"},{"remember_off":"some remember off data."},{"background_on":"some background on data "}];
    
    const key  = 'remember_tip';
    
    const toolText = _.get(
      _.find(filterToolTips, o => _.has(o, key)),
      key
    );
    
    console.log(toolText);
    <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.js"></script>

    但是,这是一个非常奇怪的数据结构,您应该对其进行转换(或要求服务器人员向您发送更有用的东西)。此方案将数据结构转换为Map,然后获取值:

    const filterToolTips = [{"remember_tip":"some remember tip data."},{"background_tip":"some background tip data"},{"remember_on":"some remember on tip data"},{"remember_off":"some remember off data."},{"background_on":"some background on data "}];
    
    const tipsMap = new Map(Object.entries(Object.assign({}, ...filterToolTips)));
    
    const key  = 'remember_tip';
    
    const toolText = tipsMap.get(key);
    
    console.log(toolText);
    <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.js"></script>

    【讨论】:

      猜你喜欢
      • 2022-12-14
      • 2022-08-07
      • 2019-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      • 2011-04-07
      • 2023-03-05
      相关资源
      最近更新 更多