Cara mengemas kini pembolehubah 'ini' dalam Vue.js dan menetapkan hasil API
P粉071626364
P粉071626364 2023-09-06 20:36:30
0
1
407

Saya ingin mengemas kini pembolehubah sayanbeBugs但在thenyang tidak boleh diakses dalam fungsi. Fungsi saya getApi ialah fungsiasynckerana API mengambil masa untuk bertindak balas

template.vue

  

api.js

import axios from "axios"; let path = import.meta.env.VITE_API_URL; const axiosObjet = axios.create({ baseURL: path, timeout: 8000, headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer ' + localStorage.apiToken } }); async function getApi(api_path, data) { //console.log(headers) console.log(path) //console.log(axiosObjet) try { let res = await axiosObjet.get(api_path) if(res.status == 200){ // test for status you want, etc console.log(res.status) } // Don't forget to return something return res } catch (err) { console.error("getApi error : " + err); } } export default getApi

P粉071626364
P粉071626364

membalas semua (1)
P粉854119263

Jika lulus ke.then()函数的参数是常规函数,它有自己的作用域,并且在其内部,外部作用域的变量将无法使用this 访问..

Gunakanfungsi anak panahsebaliknya:

getApi(url_application, null).then(({ data }) => { console.log(data); this.nbeBugs = data; });

Nota sampingan: Anda akan dikemas kinithis.chartGitlab。要么将该更新移至then()内,要么在服务器请求前面使用awaitsebelum permintaan kembali. Kemungkinan besar, ini akan berfungsi seperti yang diharapkan:

methods: { async getData() { let url_application = "api/bugs_gitlab"; await getApi(url_application, null).then(({ data }) => { console.log(data); this.nbeBugs = data; }); this.chartGitlab = { labels: ["Bloquant", "Critique", "Majeur", "Moyen", "Faible"], datasets: [ { borderColor: "#071426", data: this.nbeBugs, backgroundColor: ["#FF6384","#36A2EB","#FFA726","#66BB6A","#a855f7"], hoverBackgroundColor: ["#FF6384","#36A2EB","#FFA726","#66BB6A","#a855f7"], }, ], }; }, }
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!