Vue.js ialah rangka kerja bahagian hadapan yang sangat popular yang menyokong permintaan tak segerak dan juga menyediakan kaedah permintaan segerak. Dalam pembangunan, kadangkala kita perlu membuat permintaan segerak Artikel ini akan memperkenalkan tetapan permintaan segerak dan tetapan permintaan tak segerak dalam Vue.
1. Apakah permintaan segerak?
Dalam pembangunan bahagian hadapan, kami biasanya menggunakan permintaan tak segerak (seperti Ajax) untuk berinteraksi dengan data bahagian belakang. Permintaan tak segerak bermaksud bahawa selepas menghantar permintaan, ia tidak menunggu permintaan untuk kembali, tetapi secara langsung melaksanakan kod berikutnya dan menunggu data dikembalikan sebelum diproses. Permintaan segerak, selepas menghantar permintaan, akan menunggu permintaan kembali sebelum melaksanakan kod berikutnya dan tidak akan meneruskan pelaksanaan sehingga permintaan itu kembali.
2. Tetapan permintaan segerak dalam Vue
Vue menggunakan axios untuk permintaan data, dan kaedah permintaan lalai axios adalah tidak segerak Jika anda perlu membuat permintaan segerak, anda perlu menetapkannya kepada mod segerak . Kaedah tetapan penyegerakan adalah seperti berikut:
1 Tukar nilai axios.defaults.adapter kepada http (modul http lalai dalam node.js)
axios.defaults.adapter = require('axios/lib/adapters/http');
2 kaedah permintaan axios Tukar kepada siaran dan tetapkan async kepada palsu untuk melaksanakan permintaan segerak.
axios({method:'post',url:url,data:data,async:false})
Perlu diambil perhatian bahawa menggunakan permintaan segerak boleh menyebabkan halaman menjadi beku. Adalah disyorkan untuk menggunakannya apabila perlu.
3. Tetapan permintaan tak segerak dalam Vue
Dalam Vue, permintaan tak segerak ialah kaedah biasa, dan biasanya dihantar menggunakan aksios. Berikut ialah cara biasa axios:
1.dapatkan permintaan
axios.get('/user?id=234') .then(function (response) { console.log(response); }) .catch(function (error) { console.log(error); });
2.siarkan permintaan
axios.post('/user', { firstName: 'Fred', lastName: 'Flintstone' }) .then(function (response) { console.log(response); }) .catch(function (error) { console.log(error); });
3 >
4. Ringkasanaxios.defaults.baseURL = 'https://api.example.com'; axios.defaults.headers.common['Authorization'] = AUTH_TOKEN; axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
Atas ialah kandungan terperinci Mari kita bincangkan tentang tetapan permintaan segerak dan tak segerak dalam vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!