微信小程序分包、async和await

99 阅读1分钟

分包

修改app.json包

{
  "pages":[
    "pages/index",
    "pages/logs"
  ],
  "subpackages": [
    {
      "root": "packageA",
      "pages": [
        "pages/cat"
      ]
    }, {
      "root": "packageB",
      "name": "pack2",
      "pages": [
        "pages/apple"
      ]
    }
  ]
}

async 与 await

//语法
//async
async function name([param[, param[, ... param]]]) { statements }

//await
[return_value] = await expression;

async 函数中可能会有 await 表达式,async 函数执行时,如果遇到 await 就会先暂停执行 ,等到触发的异步操作完成后,恢复 async 函数的执行并返回解析值。 await 关键字仅在 async function 中有效。如果在 async function 函数体外使用 await ,你只会得到一个语法错误。

await 操作符用于等待一个 Promise 对象, 它只能在异步函数 async function 内部使用。

正常情况下,await 命令后面是一个Promise对象,它也可以跟其他值,如字符串,布尔值,数值以及普通函数

await针对所跟不同表达式的处理方式:

  • Promise 对象:await 会暂停执行,等待 Promise 对象 resolve,然后恢复 async 函数的执行并返回解析值。
  • Promise 对象:直接返回对应的值。