【问题标题】:Map property of an object of object trimming the name property if its too long对象对象的映射属性修剪名称属性(如果它太长)
【发布时间】:2021-08-28 08:48:42
【问题描述】:

给定一个像这样的对象:

 var fullObj = {
  prop1: "myProp1",
  subobject: {
    Obj1_id: {
      id: "Obj3_id",
      name: "./",
      otherProperties:...
    },
    Obj2_id: {
      id: "Obj2_id",
      name: "Obj2_id",
      ...
    },
    Obj3_id: {
      id: "Obj3_id",
      name: "Obj3",
     ....
    },

如果名字太长(超过 myLength)加上 3 个点,我想修剪它 我知道喜欢使用类似的东西,否则只是名称

name=name.substr(0,myLength)+"..."

鉴于此对象处于反应状态,我该如何操作该状态(使用基于类的组件)?

【问题讨论】:

  • 你试过什么?当你尝试它时发生了什么?
  • 你的问题到底是什么?

标签: javascript json reactjs ecmascript-6


【解决方案1】:

我希望这就是您想要的。它将检查name 的值是否大于3,然后它将取name 的前3 个字母并在其中添加...。

Object.keys(fullObj.subobject).forEach(function(key) {
    if(fullObj.subobject[key].name.length > 3){
        fullObj.subobject[key].name = fullObj.subobject[key].name.slice(0,3) + "..."
    }
});

【讨论】:

    猜你喜欢
    • 2011-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    相关资源
    最近更新 更多