Javascript 使用async.js深入填充sails.js

Javascript 使用async.js深入填充sails.js,javascript,arrays,object,sails.js,async.js,Javascript,Arrays,Object,Sails.js,Async.js,我在sails.js(v12)中的函数有一个大问题。我正在尝试使用async(v2.3)获取所有用户详细信息,以便深入填充我的用户信息: UserController.js: 我尝试了几乎所有的方法来修复这个问题,但是没有任何效果。。。 我能够获得我的行程数组(data.isLiked),但无法获得我的用户最终行程 我尝试在userFinal.trips上设置字符串值: JSON响应 { “trips”:[],//在覆盖模型中的任何关联之前使用.toJSON()。 否则,默认的toJSON实现将

我在sails.js(v12)中的函数有一个大问题。我正在尝试使用async(v2.3)获取所有用户详细信息,以便深入填充我的用户信息:

UserController.js: 我尝试了几乎所有的方法来修复这个问题,但是没有任何效果。。。 我能够获得我的行程数组(data.isLiked),但无法获得我的用户最终行程

我尝试在userFinal.trips上设置字符串值:

JSON响应
{
“trips”:[],//在覆盖模型中的任何关联之前使用
.toJSON()

否则,默认的
toJSON
实现将覆盖对模型关联数据所做的任何更改

var userFinal = data.user.toJSON(); // Use of toJSON
userFinal.trips = data.isLiked;
return res.json(userFinal);

另一方面,请使用JS
.map
.map
代替
async.map
,因为内部函数中没有异步操作。否则,您可能会遇到
RangeError:超出最大调用堆栈大小的问题

另外,最好只从最终回调返回任何响应。(从
async.auto
的第一个参数中删除
res.negotiate
res.badRequest
)。它允许在覆盖模型中的任何关联之前,让响应方法使用
.toJSON()

否则,默认的
toJSON
实现将覆盖对模型关联数据所做的任何更改

var userFinal = data.user.toJSON(); // Use of toJSON
userFinal.trips = data.isLiked;
return res.json(userFinal);

另一方面,请使用JS
.map
.map
代替
async.map
,因为内部函数中没有异步操作。否则,您可能会遇到
RangeError:超出最大调用堆栈大小的问题

另外,最好只从最终回调返回任何响应。(从
async.auto
的第一个参数中删除
res.negotiate
res.badRequest
)。它允许创建响应方法

var userFinal = data.user.toJSON(); // Use of toJSON
userFinal.trips = data.isLiked;
return res.json(userFinal);