亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Vue 單頁應用程序中構建 API 代碼?

如何在 Vue 單頁應用程序中構建 API 代碼?

楊__羊羊 2021-06-30 13:09:37
我正在使用 Vue(和 Laravel for RESTful API)構建一個相當大的 SPA。我很難在網上找到有關此的資源 - 組織與服務器通信的代碼的好做法是什么?目前我有src/api.js文件,它使用axios并定義了一些基本方法以及特定的 API 端點(被截斷):import axios from 'axios';axios.defaults.baseURL = process.env.API_URL;const get = async (url, params = {}) => (await axios.get(url, { params }));const post = async (url, data = {}) => (await axios.post(url, data));export const login = (data) => post('users/login', data);然后在我的組件中,我可以做...<script>import { login } from '@/api';...methods: {   login() {       login({username: this.username, password: this.password})           .then() // set state           .catch() // show errors   }}</script>這是一個好習慣嗎?我要我的終點分成多個文件(例如auth,users,documents等)?這種事情有沒有更好的設計,尤其是在涉及重復(例如錯誤處理、顯示加載條等)時?謝謝!
查看完整描述

2 回答

?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

如果您使用 Vue CLI,它將設置一個基本的項目結構。帶有一個 HelloWorld 組件。您將希望將您的 vue 應用程序分解為組件。每個組件都應該有一個定義好的角色,理想情況下您可以進行單元測試。


例如,假設您想顯示產品列表,那么您應該創建一個產品列表組件。


<Products :list="products" />

在你的應用程序中,你會做類似的事情


data() {

  return {

    prodcuts: []

  }

},

mounted() {

  axios.get('/api/products').then(res => {

    this.products = res.data

  })

}

每當您看到“是某物的塊”時,就可以從中創建一個組件,創建 props 和方法,然后在掛載的鉤子上使用 api 并填充組件。


查看完整回答
反對 回復 2021-07-15
  • 2 回答
  • 0 關注
  • 193 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號