Vue.js与Flask/Django后端配合

Vue.js 是一个用于构建用户界面的渐进式 JavaScript 框架,而 Flask/Django 是 Python 语言编写的轻量级 Web 开发框架。它们可以很好地配合使用,以实现前后端分离的开发模式。

以下是一个简单的示例,展示了如何使用 Vue.js 与 Flask/Django 后端进行交互:

1、首先,确保你已经安装了 Flask/Django 和 Vue.js。可以使用以下命令安装 Flask:

bash 复制代码
pip install flask

2、建一个 Flask 应用:

python 复制代码
# app.py
from flask import Flask, jsonify

app = Flask(__name__)

@app.route('/api/data', methods=['GET'])
def get_data():
    data = {"message": "Hello from Flask!"}
    return jsonify(data)

if __name__ == '__main__':
    app.run(debug=True)

3、建一个简单的 Vue.js 应用:

html 复制代码
<!-- index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue.js with Flask</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</head>
<body>
    <div id="app">
        <h1>{{ message }}</h1>
    </div>

    <script>
        new Vue({
            el: '#app',
            data: {
                message: ''
            },
            mounted() {
                this.fetchData();
            },
            methods: {
                fetchData() {
                    axios.get('/api/data')
                        .then(response => {
                            this.message = response.data.message;
                        })
                        .catch(error => {
                            console.log(error);
                        });
                }
            }
        });
    </script>
</body>
</html>

在这个示例中,我们创建了一个简单的 Flask 应用,其中有一个路由 /api/data,它返回一个 JSON 对象。然后,我们创建了一个 Vue.js 应用,它在页面加载时通过 Axios 发送一个 GET 请求到 Flask 应用的 /api/data 路由,并将返回的数据绑定到 Vue 实例的 message 属性上。

要运行这个示例,请确保 Flask 应用正在运行,然后在浏览器中打开 index.html 文件。你应该能看到从 Flask 应用返回的消息显示在页面上。

相关推荐
GIS开发特训营2 小时前
Vue零基础教程|从前端框架到GIS开发系列课程(七)响应式系统介绍
前端·vue.js·前端框架·gis开发·webgis·三维gis
Cachel wood2 小时前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
一个处女座的程序猿O(∩_∩)O5 小时前
小型 Vue 项目,该不该用 Pinia 、Vuex呢?
前端·javascript·vue.js
云和数据.ChenGuang8 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
燃先生._.11 小时前
Day-03 Vue(生命周期、生命周期钩子八个函数、工程化开发和脚手架、组件化开发、根组件、局部注册和全局注册的步骤)
前端·javascript·vue.js
2401_8576009514 小时前
SSM 与 Vue 共筑电脑测评系统:精准洞察电脑世界
前端·javascript·vue.js
2401_8576009514 小时前
数字时代的医疗挂号变革:SSM+Vue 系统设计与实现之道
前端·javascript·vue.js
GDAL14 小时前
vue入门教程:组件透传 Attributes
前端·javascript·vue.js
轻口味14 小时前
Vue.js 核心概念:模板、指令、数据绑定
vue.js
2402_8575834914 小时前
基于 SSM 框架的 Vue 电脑测评系统:照亮电脑品质之路
前端·javascript·vue.js