實作經驗分享:Vue3+Django4全端專案開發指南
實務經驗分享:Vue3 Django4全端專案開發指南
引言:
在當今網路高度發展的時代,全端開發已變得越來越多開發者關注和學習的方向。 Vue框架作為目前最受歡迎的前端框架之一,而Django作為強大的Python後端框架,它們的結合可以為我們提供一種全面的全端開發體驗。本文將介紹如何使用Vue3和Django4建立完整的全端項目,並分享一些開發經驗和程式碼範例。
一、環境準備
在開始專案之前,需要做好環境準備。確保你已經安裝了以下軟體:
- Node.js和npm:用於安裝和管理前端相依性。
- Python和pip:用於安裝和管理後端相依性。
- Vue CLI:用於建立Vue專案的命令列工具。
- Django:用於建立和管理後端專案。
二、建立Vue3專案
首先,我們使用Vue CLI建立一個Vue3專案。開啟命令列介面,執行以下命令:
$ vue create vue_project
依照命令列提示,選擇自己需要的配置,等待專案建立完成。
三、創建Django專案
接下來,我們使用Django建立後端專案。在命令列介面執行以下命令:
$ django-admin startproject django_project
這將在目前目錄下建立一個名為django_project的資料夾,並產生一個專案的骨架。
四、設定前後端連接
在這一步,我們需要設定前後端連接,以使得前後端可以相互通訊。首先,在vue_project/src目錄下建立一個檔案.env.development
,並加入以下內容:
VUE_APP_BACKEND_URL=http://localhost:8000
這裡的http://localhost:8000
是Django後端運行的位址。
接下來,打開vue_project/src/main.js文件,加入以下程式碼到createApp
之前:
import axios from 'axios' axios.defaults.baseURL = process.env.VUE_APP_BACKEND_URL
這個程式碼片段設定了axios的預設基礎URL為我們剛才配置的後端位址。
五、開發前端頁面
現在,我們可以開始開發前端頁面了。 Vue3的語法與Vue2略有不同,但大致相似。 Vue3提供了更強大的組合式API,可以更好地管理程式碼邏輯。下面是一個簡單的例子。
首先,在vue_project/src/components目錄下建立一個名為HelloWorld.vue
的元件文件,並新增以下內容:
<template> <div class="hello"> <h1 id="message">{{ message }}</h1> </div> </template> <script> import { ref } from 'vue' export default { name: 'HelloWorld', setup() { const message = ref('Hello, Vue3!') return { message } } } </script> <style scoped> h1 { color: red; } </style>
這個元件顯示了一個紅色的標題,標題內容透過ref定義的響應式變數設定。
為了在頁面中使用這個元件,我們需要在vue_project/src/App.vue中引入它。首先,刪除原有的內容,然後新增以下程式碼:
<template> <div id="app"> <HelloWorld/> </div> </template> <script> import HelloWorld from './components/HelloWorld.vue' export default { name: 'App', components: { HelloWorld } } </script> <style> #app { font-family: 'Arial', sans-serif; } </style>
這裡我們匯入了剛才建立的HelloWorld.vue
元件,並在頁面中引用它。
六、開發後端API
在Django專案中,我們需要建立API來提供後端服務。以建立一個簡單的使用者API為例。
首先,在django_project目錄下執行以下指令,建立一個名為users
的應用程式:
$ python manage.py startapp users
在users目錄下建立一個名為views. py
的文件,並加入以下程式碼:
from django.http import JsonResponse def get_users(request): users = [ {"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}, {"id": 3, "name": "Charlie"} ] return JsonResponse(users, safe=False)
這個簡單的視圖函數傳回一個帶有使用者資訊的JSON回應。
接下來,打開django_project/django_project/urls.py文件,並添加以下程式碼:
from django.urls import path from users.views import get_users urlpatterns = [ path('api/users', get_users), ]
這個程式碼段將get_users
視圖函數對應到路徑 /api/users
上。
七、前後端通訊
為了讓前端可以存取後端API,我們需要使用axios發送HTTP請求。回到vue_project/src/components/HelloWorld.vue文件,在setup
函數中加入以下程式碼:
import axios from 'axios' export default { name: 'HelloWorld', setup() { const message = ref('Hello, Vue3!') axios.get('/api/users').then((response) => { console.log(response.data) }) return { message } } }
這個程式碼片段使用axios發送一個GET請求到/api/ users
,並列印傳回的資料。
八、運行專案
最後,我們只需要將前後端專案分別運行起來就可以了。
在vue_project目錄下執行以下命令:
$ npm install $ npm run serve
在django_project目錄下執行以下命令:
$ python manage.py runserver
現在,打開瀏覽器並訪問http:// localhost:8080
,如果一切順利,你應該可以在控制台看到後端API回傳的資料。
總結:
本文介紹如何使用Vue3和Django4建立一個完整的全端項目,並分享了一些實務經驗和程式碼範例。透過這種全端開發方式,我們可以更有效率地建立具有前後端分離的Web應用程式。希望本文能幫助正在學習全端開發的開發者們。
以上是實作經驗分享:Vue3+Django4全端專案開發指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

可以通過以下步驟為 Vue 按鈕添加函數:將 HTML 模板中的按鈕綁定到一個方法。在 Vue 實例中定義該方法並編寫函數邏輯。

在 Vue.js 中引用 JS 文件的方法有三種:直接使用 <script> 標籤指定路徑;利用 mounted() 生命週期鉤子動態導入;通過 Vuex 狀態管理庫進行導入。

在 Vue.js 中使用 Bootstrap 分為五個步驟:安裝 Bootstrap。在 main.js 中導入 Bootstrap。直接在模板中使用 Bootstrap 組件。可選:自定義樣式。可選:使用插件。

Vue.js 中的 watch 選項允許開發者監聽特定數據的變化。當數據發生變化時,watch 會觸發一個回調函數,用於執行更新視圖或其他任務。其配置選項包括 immediate,用於指定是否立即執行回調,以及 deep,用於指定是否遞歸監聽對像或數組的更改。

Vue.js 返回上一頁有四種方法:$router.go(-1)$router.back()使用 <router-link to="/"> 組件window.history.back(),方法選擇取決於場景。

在 Vue 中實現跑馬燈/文字滾動效果,可以使用 CSS 動畫或第三方庫。本文介紹了使用 CSS 動畫的方法:創建滾動文本,用 <div> 包裹文本。定義 CSS 動畫,設置 overflow: hidden、width 和 animation。定義關鍵幀,設置動畫開始和結束時的 transform: translateX()。調整動畫屬性,如持續時間、滾動速度和方向。

可以通過以下方法查詢 Vue 版本:使用 Vue Devtools 在瀏覽器的控制台中查看“Vue”選項卡。使用 npm 運行“npm list -g vue”命令。在 package.json 文件的“dependencies”對像中查找 Vue 項。對於 Vue CLI 項目,運行“vue --version”命令。檢查 HTML 文件中引用 Vue 文件的 <script> 標籤中的版本信息。

Vue.js 遍歷數組和對像有三種常見方法:v-for 指令用於遍歷每個元素並渲染模板;v-bind 指令可與 v-for 一起使用,為每個元素動態設置屬性值;.map 方法可將數組元素轉換為新數組。
