Skip to content

JS | Promise 在一个事件函数作用域中 resolve,然后在另一个作用域调用 .then() 监听它的状态变化

约 160 字小于 1 分钟

JavaScript

2025-03-09

🌟 方案:使用 Promiseresolve 控制异步完成

let resolveFn; // 用于存储 resolve 函数
const promise = new Promise((resolve) => {
  resolveFn = resolve; // 先保存 resolve 以便后续调用
});

// 事件触发后 resolve Promise
function triggerEvent() {
  console.log("事件触发,Promise 变为 resolved");
  resolveFn("Hello, Promise 完成!");
}

// 在另一个作用域监听 Promise 结果
function waitForPromise() {
  promise.then((result) => {
    console.log("获取到 Promise 结果:", result);
  });
}

// 测试
waitForPromise();  // 先调用监听函数
setTimeout(triggerEvent, 2000);  // 2 秒后触发事件,Promise resolve

更新日志

2025/6/15 11:14
查看所有更新日志
  • 13186-initial