【发布时间】:2015-06-20 05:24:01
【问题描述】:
我尝试在控制器函数中实现同步的多个查找查询。 jquery.js 放在 gruntfile 中的 **/* 之前。我使用 Sails v0.9.4。 第一个错误:
"$ is not defined"
在这里发生:
var dfd = $.Deferred();
我是 JS 新手,对 Sails 还比较陌生,我对这个问题的长期研究绝对没有成功。
提前致谢, 马丁
PS: grunt 文件摘录:
var jsFilesToInject = [
'linker/js/socket.io.js',
'linker/js/sails.io.js',
'linker/js/app.js',
'linker/js/jquery.js',
'linker/js/jquery.validate.min.js',
'linker/**/*.js'
];
控制器摘录:
var dfds = [];
var seriesLists = [];
function checkForWord(word,place) {
var dfd = $.Deferred();
Series.find({seriesname:{'contains':'word'}}, function (err,sers) {
seriesLists[place] = sers;
dfd.resolve();
});
return dfd.promise();
}
for(var k=0;k<words.length;k++) {
dfds.push(checkForWord(words[k],k));
}
$.when.apply($, dfds).then(function() {
console.log("seriesLists:",seriesLists);
});
}
【问题讨论】:
-
我的体能将在明天晚上 7:15 恢复(或者他们告诉我的),但现在请假设我们可能想查看您的 gruntfile 或其他详细信息 :)
-
如果您需要任何信息,请告诉我。
标签: jquery controller sails.js