前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Flask和Vue.js开发一个单页面应用程序(一)

使用Flask和Vue.js开发一个单页面应用程序(一)

作者头像
TalkPython
发布2019-05-24 16:58:03
1.6K0
发布2019-05-24 16:58:03
举报
文章被收录于专栏:TalkPython

这一次给大家分享一下,如何使用Vue和Flask开发一个基本的CRUD应用程序。

首先,我会使用Vue CLI搭建一个新的Vue应用程序,然后通过Python和Flask支持的后端RESTful API执行基本的CRUD操作。

主要依赖软件包:

  • Vue v2.5.2
  • Vue CLI v2.9.3
  • Node v10.3.0
  • npm v6.1.0
  • Flask v1.0.2
  • Python v3.6.5
一、Flask服务端程序开发

创建一个新的工程目录:

代码语言:javascript
复制
$ mkdir flask-vue-crud
$ cd flask-vue-crud

在flask-vue-crud目录中,创建一个名为server的新目录。然后,在server目录中创建并激活一个虚拟环境:

代码语言:javascript
复制
$ mkdir server && cd server
$ python -m venv env
$ source venv/bin/activate

安装Flask-CORS跨域扩展插件:

代码语言:javascript
复制
(venv)$ pip install Flask==1.0.2 Flask-Cors==3.0.4

在server目录中,新建app.py文件后,编写代码:

代码语言:javascript
复制
from flask import Flask, jsonify
from flask_cors import CORS

# configuration
DEBUG = True

# instantiate the app
app = Flask(__name__)
app.config.from_object(__name__)

# enable CORS
CORS(app)

# sanity check route
@app.route('/ping', methods=['GET'])
def ping_pong():
    return jsonify('pong!')


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

运行app:

代码语言:javascript
复制
(venv)$ python app.py

运行成功后,在浏览器打开http://localhost:5000/ping。您应该看到:

代码语言:javascript
复制
"pong!"

回到终端,按Ctrl+C关闭服务器,然后导航回项目根目录。接下来,让我们将注意力转向前端并设置Vue。

Vue前端程序开发

我们将使用功能强大的Vue CLI生成一个定制的项目样板。全局安装:

代码语言:javascript
复制
$ npm install -g @vue/cli

然后在flask-vue-crud目录中运行以下命令,用webpack配置初始化一个名为client的新Vue项目:

代码语言:javascript
复制
$ vue create client

运行命令后,将看到下面这样的结果:

代码语言:javascript
复制
? Please pick a preset:(User arrow keys)
> default(babel,eslint)
Manually select features

选择defaualt回车,等待环境初始化完成。

前端项目的目录结构如下:

代码语言:javascript
复制
├── App.vue
├── assets
│ └── logo.png
├── components
│ └── HelloWorld.vue
├── main.js
├── store.js
├── router.js

运行开发服务器:

代码语言:javascript
复制
$ npm run serve

在你喜欢的浏览器中打开http://localhost:8080。您应该看到以下内容:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TalkPython 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Flask服务端程序开发
  • Vue前端程序开发
相关产品与服务
Serverless HTTP 服务
Serverless HTTP 服务基于腾讯云 API 网关 和 Web Cloud Function(以下简称“Web Function”)建站云函数(云函数的一种类型)的产品能力,可以支持各种类型的 HTTP 服务开发,实现了 Serverless 与 Web 服务最优雅的结合。用户可以快速构建 Web 原生框架,把本地的 Express、Koa、Nextjs、Nuxtjs 等框架项目快速迁移到云端,同时也支持 Wordpress、Discuz Q 等现有应用模版一键快速创建。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档