2016-01-18 25 views
-2

的NodeJS:(服務調用)如何使用AngularJS訪問這個JSON數據?

router.route('/getProAtribute') 
.post(function(req,res,next){ 
ProductData.find({},{'_id':0,'attribute':1},function(err,productDatas){ 
if(!err){res.json(productDatas);} 
else{res.json({'status':'no data or error'});} 
}); 
}); 

架構:

var product_schema = new mongoose.Schema({ 
product_id:{type:Number}, 
product_name:{type:String}, 
product_image:{type:String}, 
product_image_type:{type:String}, 
category_id:{type:Number}, 
category_name:{type:String}, 
attribute:{type:[]} 
}) 
var ProductData = module.exports = mongoose.model('productData', product_schema); 

JSON輸出:

[{"_id":"5693413efc055b0011ac7891","attribute:[{"Size":"asd","Brand":"asds","product_id":"1"}]},{"_id":"569cb82c079bfa80094dc936","attribute":[{"Size":"SA","Brand":"123","product_id":"2"}]}] 

注:在屬性鍵會動態變化(大小,顏色,型號,價格等....)

所以我需要打印鍵和價值在前端。

+0

你必須提供詳細信息。你是否從REST服務獲取這些數據?你的後端是什麼? –

+0

你必須給我們返回結束碼,兩個碼都需要匹配。 –

回答

0

試試這個

<div ng-repeat="(key,value) in data"> 
{{value._id}} 
<div ng-repeat="(key,values) in value.attribute"> 
{{values.Size}} {{values.Brand}} 
Key: {{key}} 
</div> 
</div> 

OR

<div ng-repeat="value in data"> 
{{value._id}} 
{{value.attribute[0].Size}}<!--For static you can use $index in place of 0--> 
</div> 
+0

如果屬性數組鍵不斷變化(動態變化),然後呢?如何打印這些鍵和值?請幫幫我 。 – Pandu

+0

我編輯了答案..檢查它適用於動態屬性數組 –