本帖最后由 lucklys 于 2022-10-21 14:49 编辑
[JavaScript] 纯文本查看 复制代码 <!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8" />
<title>TEST</title>
<!-- Vue 3 -->
<script src="https://candyissupersweet.gitee.io/cdn/vue3/vue.global.prod.js"></script>
</head>
<body>
<div id="app"></div>
<script type="text/javascript">
let that = null,
App = null
App = {
mounted() {
that = this
that.start()
},
methods: {
async start() {
try {
const myData = await that.getData()
console.log(myData)
if (myData) {
console.log('开始使用数据')
console.log('myData', myData)
}
} catch (error) {
console.log('捕获错误')
console.log(error)
// 【备用数据步骤】
// 当出现跨域请求等错误导致无法获得数据时,用备用数据。
// 这里一些逻辑生成data
// 用户上传打开文件
const data = []
this.handleData(data)
}
},
// 处理数据
handleData(data) {
console.log(data)
// 加工一下数据
return data
},
getData() {
let self = this
return new Promise((res, rej) => {
const xhr = new XMLHttpRequest()
xhr.open('get', '/data.txt', true)
xhr.onload = function () {
if (xhr.status < 400) res(xhr.responseText)
}
xhr.onerror = function (e) {
rej(e)
}
xhr.send()
})
},
},
}
const app = Vue.createApp(App)
app.mount('#app')
</script>
</body>
</html>
|