async created() { const obj = { key: this.loginForm.key } this.$store.commit('user/getKey', obj.key) const res = await codeApi(obj) console.log(res) const blob = new Blob([res.data], { type: 'image/png' }) const url = window.URL.createObjectURL(blob) this.verifyImg = url console.log(this.verifyImg) },
时间: 2024-04-04 17:35:30 浏览: 126
Vue中this.$nextTick的作用及用法
5星 · 资源好评率100%
根据你提供的代码片段,我看到在`created`生命周期钩子中进行了异步操作。具体来说,你在调用`codeApi`函数时使用了`await`关键字,这意味着该函数返回的是一个`Promise`对象,而不是一个立即可用的值。由于异步操作需要一定的时间才能完成,因此你在`console.log(this.verifyImg)`之前可能无法获得`this.verifyImg`的值。
如果你想在异步操作完成后再进行某些操作,需要将这些操作放在`await`语句后面。例如,可以将`console.log(this.verifyImg)`移动到`const url = window.URL.createObjectURL(blob)`之后,这样你将在异步操作完成后才会看到`this.verifyImg`的值。
此外,你还在`created`钩子中调用了`this.$store.commit`,这可能会更改Vuex存储中的状态。如果你的组件依赖于该状态,最好将状态更新逻辑放在`mounted`钩子中,以确保状态已完全初始化。
阅读全文