layer.open同步
时间: 2023-08-31 19:09:42 浏览: 150
`layer.open` 是一个异步方法,它用于打开一个弹窗。如果你想要让它变成同步方法,可以使用 `async/await` 或者 `Promise` 的方式来实现。
使用 `async/await` 的方式:
```javascript
async function openLayer() {
await layer.open({
type: 1,
content: 'Hello World'
});
console.log('弹窗已关闭');
}
```
使用 `Promise` 的方式:
```javascript
function openLayer() {
return new Promise((resolve, reject) => {
layer.open({
type: 1,
content: 'Hello World',
end: resolve
});
});
}
// 调用方式
async function test() {
await openLayer();
console.log('弹窗已关闭');
}
```
在这两种方式中,我们都将 `layer.open` 的 `end` 参数设置为一个回调函数。当弹窗关闭后,这个回调函数会被调用。在第一个例子中,我们使用 `await` 来等待弹窗关闭,然后输出一条消息。在第二个例子中,我们将 `layer.open` 包装成一个返回 `Promise` 的函数,当弹窗关闭时,`resolve` 函数会被调用。在 `test` 函数中,我们使用 `await` 来等待 `openLayer` 函数结束,然后输出一条消息。
阅读全文