使用vue+flask做全棧開發的全過程(實現前后端分離)


花了幾天的時間終於在本地把前后端跑通了,以一篇博客記錄我這幾天的心酸。。。

1、安裝nodejs(自帶npm,可能會出現版本錯誤,更新npm)

2、npm在國內下載時,可能會慢,所以建議要安裝淘寶鏡像,命令如下

npm install -g cnpm --registry=https://registry.npm.taobao.org

3、安裝webpack打包,安裝webpack(不懂webpack的建議去官網照着例子敲一邊,豁然開朗)

cnpm install webpack -g

4、安裝vue腳手架

5、創建一個文件夾testapp

cd testapp

6、新建vue項目

vue init webpack myvue 或者 vue init webpack-simple 工程名

會出現一些初始化設置,直接回車,保持默認也行

7、cd myvue,執行 npm install 或者cnpm install后者更快

8、啟動項目npm run dev

到這里,前端完成,分割線===================================================================

9、先安裝axios,就相當於之前用ajax,用於前后端交互

10、修改App.vue,內容如下:

<template>

  <div id="app">

    <button @click="aaaaa">sasa</button>

  </div>

</template>

 

<script>

import axios from 'axios';

 

export default {

  name: 'app',

  data () {

    return {

    }

  },

  methods: {

    aaaaa () {

      axios.get("http://127.0.0.1:5000").then(function(r) {

        alert(r.data)

      });

    }

  }

}

前端修改完成========================================

11、后端因為存在跨域的問題,所以建議安裝flask_cors

12、

這是我的目錄結構,在app下面的__init__.py文件里面輸入以下內容

這個文件其實是用來做路由的

13、db包用來存放對應數據庫的表,並在db下面的__init__文件下面,輸入數據庫鏈接信息,因為我是python3的環境,我鏈接mysql的第三方庫用的是pymysql

14、然后model包里面進行全部對數據庫的操作,不涉及業務邏輯

15、exception里面放的是自己寫的異常類

16、public里面放的是一些公共的方法

17、resource里面就是業務邏輯了

18、service放的是工具類

最后運行以下app下面的__init__.py文件,會有

然后前端運行命令npm run dev,點擊button就會有數據返回了,建議最好是部署服務器,不然,每次在后端修改之后,都要重新執行一遍前后端的運行命令,有點麻煩

github地址:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM