在我的主要代码中,我执行以下操作:
public String Create_ex="CREATE TABLE ExerciserEasy"
+ " (ID INTEGER PRIMARY KEY AUTOINCREMENT, Workout VARCHAR, ExerciseOne VARCHAR,"
+"ExerciseTwo VARCHAR, ExerciseThree VARCHAR, ExerciseFour VARCHAR );"
public ArrayList<String> getExercises(){
ArrayList<String> list = new ArrayList<String>();
SQLiteDatabase db = this.getReadableDatabase();
db.beginTransaction();
try {
String selectQuery = " Select * from " + Table_ex1;
Cursor cursor = db.rawQuery(selectQuery, null);
if(cursor.moveToFirst()){
do{
list.add(cursor.getString(2));
list.add(cursor.getString(3));
list.add(cursor.getString(4));
list.add(cursor.getString(5));
Log.d("HIITtimer", ""+cursor.getCount());
}while(cursor.moveToNext());
}
db.setTransactionSuccessful();
}catch (Exception e){
e.printStackTrace();
}finally {
db.endTransaction();
db.close();
}
return list;
}
var module = require('./module')
module.FooA(module.FooB);
包含下一个代码:
module.js
问题是,即使条件符合,var request = require('request'); //using of npm "request"
exports.FooB = function(data){ /*operations on data here*/ };
exports.FooA = function(callback){
var url = some_link;
request(url, function (error, response, body) {
if (!error && response.statusCode == 200) {
callback(body);
};
});
};
显然也不会运行。 callback(body)
后跟var result = request(url)
完成了这项工作,但据我所知,显然不会像回调一样,并会产生麻烦。
在这种情况下定义回调函数的正确方法是什么?我是否需要,或者它实际上是同步的,我没注意到它?
答案 0 :(得分:2)
使用带错误的第一个函数回调参数,这是node.js核心中的默认值,并且是Google的项目函数。
和@ShanSan一样,请使用 console.log , console.error 或 console.trace 进行调试。
示例:
isEmpty()