我们想异步加载一些js,如请求接口判断后选择加载不同的sdk这类的需求,实现起来也很简单。
/**
* 异步加载脚本
* @param url 脚本地址
* @param onloaded 加载完成的回调
*/
export const loadScript = (url) => {
return new Promise((resolve) => {
let script = document.createElement('script')
script.src = url
script.onload = () => {
resolve(true) //改变promise的状态为resolved
}
document.body.appendChild(script)
})
}
使用方法
loadScript(url).then(() => {})