1. 搭建前端+后端开发框架

1. 说明

本篇博客主要介绍网页开发中,搭建前端和后端开发框架的具体步骤,框架中所使用的技术栈如下:
前端:VUE + Javascript
后端:Python + Flask + Mysql
其中MySQL主要用来存储需要的数据,在本文中搭建基本框架时不做说明,后续该专栏系列的文章会根据情况做简要介绍。前端框架使用的是VUE2版本,读者可以根据需要换成VUE3.
该专栏系列文章需要读者具备基本的前后端开发知识,一些基本的操作可能在文章中会一笔带过。

2. 框架搭建步骤

2.1. 后端框架搭建

后端框架选择使用Python结合Flask,比较简单,在具备Python开发环境后,新建一个main.pay文件即可,具体代码如下:

from flask import Flask, request, jsonify
from flask_cors import CORS

app = Flask(__name__)

CORS(app)

# 添加一个路由函数,用于前端通信测试 (这里的语法不懂的可以百度下)
@app.route(/helloFlask/<string:testPara>, methods = [‘GET’,’POST’])
def hlloFlask(testPara):
	print(“testPara :, testPara)
	return jsonify({
			‘satus’ : ‘success’,
			’message’ : testPara
		}),200

if __name__ == ‘__main__’:
	app.run(host =0.0.0.0, debug = True)

运行此代码,会在终端里输出一些提示,其中有一个是Runing on http://127.0.0.1:5000,这里的网址需要记住,会在前端配置中使用到。到此,一个简单的后端Flask框架就已经搭建完毕。

2.2. 前端框架搭建

第一步:在前端框架搭建之前,需要做一个基本的VUE环境配置,并新建一个基于VUE2的项目,这些可以自行百度。打开项目,找到vue配置文件vue.config.js,按照如下代码进行配置:

const { defineConfig } = require(‘@vue/cli-service’)
module.exports = defineConfig({
	transpileDependencies: true,
	devServer:{
		proxy:{/api’:{
				target:’http://127.0.0.1:5000//注意:这里的地址就是在上一步后端显示的地址
				//target:’http://local host:5000’	 //这样写也是可以的
				changeOrigin:true,
				pathRewrite:{^/api’:’’
				}
			}
		}
	},
})

第二步:因为使用的是路由视图,所以需要在App.vue文件中添加路由占位符,代码如下:

<template>
	<div id=“app”>
		<router-view></router-view>
	</div>
</template>

<script>
export default {
	name:’App”,
}
</script>

<style>
</style>

第三步:在main.js文件中渲染主界面文件App.vue,代码如下:

import Vue from ‘vue’;
import App from ‘./App.vue’;
import router from ‘./router’;

new Vue({
	el:’#app’,
	render: h => h(App),
	router,
});

第四步:创建第一个视图页面firstPage.vue,后面这个页面会被渲染到App.vue代码的路由占位符中,具体代码如下:

<template>
	<div>
		<span>这是第一个页面</span>
		<button @click=“testFlask”>测试后端</button>
	</div>
</template>
<script>
import axios from ‘axios’;
export default {
	name:’first_page’,
	data(){
		return {
			testPara:123456,
		}
	},
	created(){

	},
	computed:{

	},
	wach:{
	
	},
	methods:{
		testFlask(){
			//注意:helloFlask是在后端定义的路由函数名,后面的是传递的参数
			axios.get(/api/helloFlask/${this.testPara})
				.then(response => {
					if(response.data.status === ‘success’){
						alert(response.data.message);
					}
					else{
						alert(response.data.message);
					}
				})
		},
	},
}
</script>
<style scoped>
</style>

第五步:上面创建了一个子视图界面后,需要告诉路由router这个子视图是属于哪一个路由占位符的,所以还需要在index.js文件中进行指定,具体代码如下:

import Vue from “vue”;
import VueRouter from “vue-router”;

Vue.use(VueRouter);

const router = new VueRouter({
	mode:”history”,
	routes:[
		{
			path:/,
			name:”firt_page”,
			component: () => import(“@/components/firstPage.vue”)
		},
	],
});

至此,一个完整的前后端开发的基本框架已经搭建完毕,打开终端,输入*** npm run serve***,运行前端代码后,即可看到弹窗提示,显示出参数“123456”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/980667.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

项目准备(flask+pyhon+MachineLearning)- 3

目录 1.商品信息 2. 商品销售预测 2.1 机器学习 2.2 预测功能 3. 模型评估 1.商品信息 app.route(/products) def products():"""商品分析页面"""data load_data()# 计算当前期间和上期间current_period data[data[成交时间] > data[成…

老牌工具,16年依然抗打!

在电脑还没普及、操作系统为Windows XP/7的时代&#xff0c;多媒体文件的转换操作常常面临格式不兼容的问题。这时一款名为格式工厂的软件成为了众多用户的首选工具。格式工厂以其简洁易用的界面和强大的功能&#xff0c;轻松地进行各种文件格式的转换。成为很多修小伙伴的喜爱…

LM studio 加载ollama的模型

1.LM 下载&#xff1a; https://lmstudio.ai/ 2.ollama下载&#xff1a; https://ollama.com/download 3.打开ollama&#xff0c;下载deepseek-r1。 本机设备资源有限&#xff0c;选择7B的&#xff0c;执行ollama run deepseek-r1:7b 4.windows chocolatey下载&#xff1a; P…

Linux内核以太网驱动分析

1.网络接口卡接收和发送数据在Linux内核中的处理流程如下&#xff1a; 1. 网络接口卡&#xff08;Network Interface Card, NIC&#xff09; 作用&#xff1a;负责物理层的数据传输&#xff0c;将数据包从网络介质&#xff08;如以太网线&#xff09;读取到内存中&#xff0c;或…

unity中使用spine详解

一.Spine概述 Spine 是一款针对游戏开发的 2D 骨骼动画编辑工具。 Spine 旨在提供更高效和简洁 的工作流程&#xff0c;以创建游戏所需的动画。 Spine原理&#xff1a;将一个模型&#xff0c;根据动画的需求分成一些骨骼&#xff0c;一个骨骼对应一张贴图&#xff0c;控制骨骼…

【计网】计算机网络概述

第一章 计算机网络概述 1.2 因特网概述1.2.1 网络、互联网和因特网1.2.2 因特网发展的三个阶段1.2.3 因特网的标准化工作1.2.4 因特网的组成 1.3 三种交换方式1.3.1 电路交换1.3.2 分组交换1.3.3 报文交换1.3.4 三种交换的对比 1.4 计网的定义与分类1.4.1 定义1.4.2 分类 1.5 计…

基于Linux系统的物联网智能终端

背景 产品研发和项目研发有什么区别&#xff1f;一个令人发指的问题&#xff0c;刚开始工作时项目开发居多&#xff0c;认为项目开发和产品开发区别不大&#xff0c;待后来随着自身能力的提升&#xff0c;逐步感到要开发一个好产品还是比较难的&#xff0c;我认为项目开发的目的…

[密码学实战]Java实现SM4加解密(ecb,cbc)及工具验证

前言 在现代信息安全领域,数据加密技术是保障数据安全的核心手段之一。SM4作为中国国家密码管理局发布的对称加密算法,因其高效性和安全性,广泛应用于金融、政务、通信等领域。本文将详细介绍如何使用Java实现SM4的加解密操作,并深入探讨SM4的几种常见加密模式及其原理。 …

StableDiffusion本地部署 3 整合包猜想

本地部署和整合包制作猜测 文章目录 本地部署和整合包制作猜测官方部署第一种第二种 StabilityMatrix下载整合包制作流程猜测 写了这么多python打包和本地部署的文章&#xff0c;目的是向做一个小整合包出来&#xff0c;不要求有图形界面&#xff0c;只是希望一键就能运行。 但…

‘ts-node‘ 不是内部或外部命令,也不是可运行的程序

新建一个test.ts文件 let message: string = Hello World; console.log(message);如果没有任何配置的前提下,会报错’ts-node’ 不是内部或外部命令,也不是可运行的程序。 此时需要安装一下ts-node。 npm install

(done) MIT6.S081 Interrupts Lecture 学习笔记

url: https://mit-public-courses-cn-translatio.gitbook.io/mit6-s081/lec09-interrupts/9.1-memory-in-real-os 9.1 真实操作系统内存使用情况 今天课程的内容是中断。但是在具体介绍中断之前&#xff0c;我想先回顾一下上周一些有趣的内容。因为上周的课程主要是讲内存&…

40岁开始学Java:Java中单例模式(Singleton Pattern),适用场景有哪些?

在Java中&#xff0c;单例模式&#xff08;Singleton Pattern&#xff09;用于确保一个类只有一个实例&#xff0c;并提供全局访问点。以下是详细的实现方式、适用场景及注意事项&#xff1a; 一、单例模式的实现方式 1. 饿汉式&#xff08;Eager Initialization&#xff09; …

【计算机网络基础】-------计算机网络概念

1.什么是计算机网络 定义&#xff1a; 图解&#xff1a; 2.最简单的计算机网络 其中&#xff1a; 结点可以是计算机、集线器、交换机、路由器等链路可以是有线链路、无线链路 2.1集线器 2.2交换机 3.互连网&#xff08;internet&#xff09;与 路由器 路由器 与 家用路由…

Qt 自带颜色属性

Qt 系统自带颜色如下&#xff1a; enum GlobalColor {color0,color1,black,white,darkGray,gray,lightGray,red,green,blue,cyan,magenta,yellow,darkRed,darkGreen,darkBlue,darkCyan,darkMagenta,darkYellow,transparent};对应颜色如下&#xff1a; color0: 这是自定义颜色…

数据结构(初阶)(七)----树和二叉树(前中后序遍历)

实现链式结构的二叉树 实现链式结构的二叉树遍历前序遍历中序遍历后序遍历 节点个数叶子节点个数⼆叉树第k层结点个数⼆叉树的深度/⾼度查找值为X的节点二叉树的销毁 层序遍历判断二叉树是否为完全二叉树 ⽤链表来表⽰⼀棵⼆叉树&#xff0c;即⽤链来指⽰元素的逻辑关系。 通常…

哔哩哔哩IT私塾python爬虫视频教程中的项目文件

视频链接&#xff1a; Python课程天花板,Python入门Python爬虫Python数据分析5天项目实操/Python基础.Python教程_哔哩哔哩_bilibili 视频教程中要访问的链接&#xff1a; 豆瓣电影 Top 250 httpbin.org seo推广公司网站模板_站长素材 Examples - Apache ECharts WordCloud…

实验:k8s+keepalived+nginx+iptables

1、创建两个nginx的pod&#xff0c;app都是nginx nginx1 nginx2 2、创建两个的pod的service 3、配置两台keepalived的调度器和nginx七层反向代理&#xff0c;VIP设置192.168.254.110 keepalived调度器master keepalived调度器backup 两台调度器都配置nginx七层反向代理&#…

【Cadence仿真学习笔记】ADS Dynamic Link报错model is reserved的解决办法

首先创建好原理图 创建symbol 在library manager下就会出现symbol了 在Cadence的CIW窗口中运行ADS dynamic link 打开ADS后&#xff0c;创建对应的cellview 加入控件OPTIONS 加入网表netlist 这个时候的Netlist没有路径 点击加载symbol 把原来的netlist include删掉…

【星云 Orbit • STM32F4】06. 串口密码:USART 数据传递

1. 引言 STM32F407是一款高性能的微控制器&#xff0c;具有丰富的外设和强大的处理能力。串口&#xff08;USART&#xff09;是STM32F407的重要外设之一&#xff0c;广泛应用于数据通信、调试和控制等领域。本教程旨在帮助小白从零开始&#xff0c;手动配置STM32F407的串口功能…

Win32 C++ 电源计划操作

CPowerCfgUtils.h #pragma once#include <Windows.h> #include <powrprof.h>// https://learn.microsoft.com/zh-cn/windows/win32/api/powrprof/?sourcerecommendations//节能 //DEFINE_GUID(GUID_MAX_POWER_SAVINGS, 0xA1841308, 0x3541, 0x4FAB, 0xBC, 0x81, …