2017-08-07 64 views
0

我在代碼片段中使用它,但沒有使用我的腳本代碼。我得到從lodash中的對象數組中獲取鍵值

財產colorId和sizeId不會對類型{}存在

const ids = [ 
 
     { 
 
      "skuId": 693194, 
 
      "sizeId": "12M", 
 
      "colorId": "ROSE" 
 
     }, 
 
     { 
 
      "skuId": 693195, 
 
      "sizeId": "14M", 
 
      "colorId": "ROSE" 
 
     }, 
 
     { 
 
      "skuId": 973804, 
 
      "sizeId": "6M", 
 
      "colorId": "GREEN" 
 
     } 
 
    ] 
 
     
 
    const sku = _.result(_.find(ids, function(sku) { 
 
        return sku.colorId === 'ROSE' && 
 
        sku.sizeId === '14M'; 
 
            }), 'skuId'); 
 
            
 
            console.log(sku);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>

+0

嗨解決了這個問題。如果您正在使用的打字稿和角度也許嘗試: –

回答

0

鑄造ID來陣列

_.result(_.find(<Array<any>>ids, function(sku) { 
       return sku.colorId === 'ROSE' && 
       sku.sizeId === '14M'; 
           }), 'skuId'); 

           console.log(sku); 
0

如果你使用的打字稿和角度也許嘗試:

let myids= ids.filter(sku => sku.color === 'ROSE' && 
        sku.sizeId === '14M';).map(yy=>yy.skuId); 

希望它可以幫助你

+0

我投給數組和它似乎工作> IDS – kyserslick

+0

如果你想你也可以像let let myids = ids.filter(sku => sku.color ==='ROSE'&& sku.sizeId ==='14M'; ).map(yy => yy.skuId)as Array ; –

+0

如果它的工作和heklped你評價它也爲ohters –