<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<script>
function loadScriptWithPromise(src) {
return new Promise((resolve, reject) => {
const script = document.createElement('script');
script.src = src;
script.onload = function () {
// 当脚本加载成功时,调用resolve
resolve();
};
script.onerror = function (err) {
// 当脚本加载出错时,调用reject,并传递错误信息
reject(err);
};
document.head.appendChild(script);
});
}
// 使用示例
const scriptSrc = 'https://example.com/some-script.js';
loadScriptWithPromise(scriptSrc)
.then(() => {
console.log('脚本加载成功');
// 在这里可以执行依赖该脚本的后续操作,比如调用脚本中暴露的函数等
})
.catch((error) => {
console.error('脚本加载失败:', error);
});
</script>
</body>
</html>