在环回中,我使用afterRemote
挂钩获取请求,如下所示
Modelname.afterRemote("**", function(ctx, expenses, next){
if(ctx.method.name == 'find') {
for(var i=0; i<ctx.result.length; i++){
delete ctx.result[i].category;
}
}
});
在上面我试图在发送到客户端之前从获取请求响应中删除密钥。但仍然出现了。所以它不可能删除我们在model.json中创建的键。请分享您的想法。提前谢谢。
答案 0 :(得分:0)
您需要使用result.unsetAttribute('field')
Modelname.afterRemote("**", function(ctx, expenses, next){
if(ctx.method.name == 'find') {
for(var i = 0; i < ctx.result.length; i++) {
ctx.result[i].unsetAttribute('category');
}
}
});
以下是related GitHub issue,如果您有兴趣的话。
LoopBack文档的Operation hooks部分对此进行了记录,但遗憾的是Remote hooks部分没有提到它。
注意:如果您想将此挂钩限制为仅 find 方法,则可以使用Modelname.afterRemote("find", function (ctx, expenses, next) {});
指定它。