我正在努力进行这项工作,我在做什么错了?
函数one
完成后,我希望能够做些事情。
function one() {
// do stuff
}
function main() {
//script
//script
one(function() {
// do some stuff when "one" is completed
console.log("one is completed");
});
}
为什么这不触发回调? (控制台中没有日志条目)
答案 0 :(得分:3)
您需要将回调作为参数传递并像正常函数一样调用
function one(a, b, fn) {
// do staff
if (fn) {
fn()
}
}
function main() {
//script
//script
one(5, 6, function() {
// do some stuff when "one" is completed
console.log("one is completed");
}
}
答案 1 :(得分:0)
由于one
不会发生回调,因此它将被忽略并且永远不会回叫。
function one(callback) { // <- take a callback
callback(); // <- call back the callback "callback"
}
答案 2 :(得分:0)
您需要在one()函数内部传递回调函数。然后您需要调用该函数:
const one = (cb) => {
console.log('in one()');
cb();
}
const main = () => {
one(() => {
console.log('one() is completed');
});
}
main();
输出:
in one()
one() is completed