NodeJs :(服务电话)
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 :(得分: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>