用MySQL+node+vue做一个学生信息管理系统(一):配置项目

先用npm init -y生成配置文件
在这里插入图片描述

在项目下新建src文件夹,app.js文件。src目录用来放静态资源文件,app.js是服务器文件,index.js是vue的入口文件

在这里插入图片描述

使用npm install express下载express框架

在app.js文件夹开启node服务,监听的端口为3000,并且开放静态资源文件的src目录

const express = require('express');
const app = express();
const path = require('path');
//开放静态资源访问,只需要输入文件名即可,不需要输入文件夹
app.use(express.static(path.join(__dirname,'src')));
app.listen(3000);

使用node app.js发现node服务启动成功
在这里插入图片描述

安装webpack:
1.运行npm install webpack webpack-cli -D命令
2.在项目根目录中,创建名为webpack.config.js的webpack配置文件
3.在webpack的配置文件中,初始化配置

module.exports = {
	mode:'development'//mode用来指定构建模式 production
}

4.在package.json配置文件中的scripts节点下,新增dev脚本如下:

"scripts":{
	"dev":"webpack"
}

5.使用npm run dev命令,启动webpack进行项目打包
6.webpack会帮我们创建一个dist目录,dist目录当中的main.js为低级的js代码

在这里插入图片描述

webpack配置打包的入口和出口:
默认打包的入口文件为src->index.js,打包的输出文件为dist->main.js文件
如果要修改打包的入口和出口,可以在webpack.config.js新增如下配置信息:

const path = require('path');
module.exports = {
	mode:'development',//mode用来指定构建模式 production
	entry:path.join(__dirname,'./src/index.js'),//打包入口文件的路径
	output:{
		path:path.join(__dirname,'./src'),//输出文件的存放路径
		filename:'bundle.js',//输出文件的名称
	}
}

src目录下的bundle.js是webpack帮我们自动创建的,我们只需要在index.html当中引入bundle.js项目就能运行
在这里插入图片描述

打包处理css文件
1.运行npm install style-loader css-loader -D命令,安装处理css文件的loader
2.在webpack.config.js的module.rules数组中,添加loader规则如下:

module:{
rules:[
	{test:/.css$/,use:['style-loader','css-loader']},
]
}

test表示匹配的文件类型,use表示要用的loader

打包处理高级js语法:
1.npm install babel-loader @babel/core @babel/runtime -D
2.npm install @babel/preset-env @babel/plugin-transform-runtime @babel/plugin-proposal-class-properties -D
3.在项目根目录中,创建babel配置文件babel.config.js并初始化配置如下:

module.exports = {
	presets:[ '@babel/preset-env' ],
	plugins:[ '@babel/plugin-transform-runtime','@babel/plugin-proposal-class-properties' ]
}

4.在webpack.config.js的module -> rules数组中,添加loader规则如下:

{ test:/.js$/,use:‘babel-loader’,exclude:/node_modules/}

vue单文件组件的使用方法,在src目录下新建components目录

webpack中配置vue组件的加载器:
1.运行npm install vue-loader vue-template-compiler -D
2.在webpack.config.js配置文件中,添加vue-loader的配置项如下:

const VueLoaderPlugin = require('vue-loader/lib/plugin');
module.exports = {
module:{
rules:[
	//…其他规则
	{ test:/.vue$/,use:'vue-loader'}
]
},
plugins:[
	//其他插件
	new VueLoaderPlugin()
]
}

在webpack项目中使用vue:
1.运行npm install vue -S安装vue
2.在src->index.js入口文件中通过import Vue from ‘vue’来导入vue构造函数
3.创建vue的实例对象,并指定要控制的el区域
4.通过render函数渲染App根组件

import Vue from 'vue'
import App from './components/App.vue'
const vm = new Vue({
	el:'#app',
	render:h=>h(App)
})

做完以上的配置时,在命令行工具输入npm run dev,打包成功,并且src目录下多了bundel.js文件,把这个bundle.js引入在index.html中,输入node app.js打开服务器

在这里插入图片描述

然后打开localhost:3000发现项目已经可以成功运行
在这里插入图片描述

webpack.config.js

const path = require('path');
const VueLoaderPlugin = require('vue-loader/lib/plugin');
module.exports = {
	mode:'development',//mode用来指定构建模式 production
	entry:path.join(__dirname,'./src/index.js'),//打包入口文件的路径
	output:{
		path:path.join(__dirname,'./src'),//输出文件的存放路径
		filename:'bundle.js',//输出文件的名称
	},
	module:{
		rules:[
			{test:/.css$/,use:['style-loader','css-loader']},
			{ test:/.js$/,use:'babel-loader',exclude:/node_modules/},
			{ test:/.vue$/,use:'vue-loader'}
		]
	},
	plugins:[
	//其他插件
	new VueLoaderPlugin()
	]
}

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

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

相关文章

可视化作品集(01):工业控制领域的大屏

hello,大家好,我是威斯数据,本期开始按照主题来分享可视化大屏/数字孪生项目作品集,大家想看哪些行业的作品,可以在评论区留言。 可视化大屏在工业控制领域可以帮助企业实现生产过程的实时监控、故障预警、生产调度和…

【Windows】Visual Studio Installer下载缓慢解决办法

【Windows】Visual Studio Installer下载缓慢解决办法 1.背景2.分析3.结果 1.背景 使用visual studio在线安装包进行IDE安装,发现下载几乎停滞,网速几乎为零。 经过排查并不是因为实际网络带宽导致。 这里涉及DNS知识; DNS(Dom…

Lua、AB包热更新总结

1.AB包热更新 (1)AB包是一种特定的压缩文件,可以放模型贴图音效等等 (2)Resources目录下打包时只读 无法修改;而AB包存储的位置是自定义的,能够动态更新,同时可以决定资源包初始的大…

红酒与舞蹈:舞动的味觉艺术

在艺术的海洋中,红酒与舞蹈总是能激起人们心中较温柔的涟漪。红酒以其深邃的色泽、馥郁的香气,诠释着味觉的艺术;而舞蹈,则以优雅的姿态、灵动的步伐,演绎着视觉的盛宴。当红酒遇上舞蹈,一场别开生面的艺术…

pycharm工具回退键调出

pycharm工具调出回退键。 View->Appearance->Toolbar,即可调出 调不出的可以使用快捷键:ctrlalt向左箭头 但是这个快捷键容易和电脑屏幕旋转冲突。可将电脑的快捷键关掉,即可。 ctrlalt向上箭头:将屏幕旋转到正常(横向&am…

Monorepo(单体仓库)与 MultiRepo(多仓库): Monorepo 单体仓库开发策略与实践指南

🔥 个人主页:空白诗 文章目录 一、引言1. Monorepo 和 MultiRepo 简介2. 为什么选择 Monorepo? 二、Monorepo 和 MultiRepo 的区别1. 定义和概述2. 各自的优点和缺点3. 适用场景 三、Monorepo 的开发策略1. 版本控制2. 依赖管理3. 构建和发布…

svn忽略上传文件node_modules文件

文章目录 1.点击svn项目右键-》选中svn的属性2. 点击 新建3. 点击其他4. 选择属性 svn:global-ignores5. 输入忽略文件 1.点击svn项目右键-》选中svn的属性 2. 点击 新建 3. 点击其他 4. 选择属性 svn:global-ignores 5. 输入忽略文件

能在网页上快速创建Linux系统的Instantbox

什么是 Instantbox ? Instantbox 是一个开源项目,旨在帮助用户在几秒钟内即可获得一个干净、随时可用的 Linux 机器。用户可以选择多种主流的的 Linux 发行版,目前支持 Ubuntu、CentOS、Arch Linux、Debia、Fedora、Alpine 的各个版本。软件基…

华为HCIP Datacom H12-821 卷24

1.单选题 企业大楼有大量员工通常都在上班时在大厅开始接入到公司的WLAN网络,随着每位员工走到各自的工位过程中,每个人的移动端叶通过漫游的方式漫游到各自的网络覆盖区域。为了尽量保证每个终端的IP地址是固定的,建议的做法是? A、配置VLAN Poo…

他们在闲鱼购物开通快手免密支付,支付宝被盗刷上万……

移动支付时代,想必大家都体验过爽到不能再爽,丝滑到不能再丝滑、方便到不能再方便的免密支付吧!‍‍‍‍ 小柴前几年也一样,在网络平台消费支付的时候,只要跳出授权免密支付的提醒,通通同意了。 但是被各种…

vue3 在el-input的光标处插入文本

点击文本框下方的按钮&#xff0c;将相应的文本插入光标处的实现&#xff1a; <el-input type"textarea" rows"4" v-model"formula" blur"handleBlur" clearable></el-input><el-button-group class"short_btn&q…

Python28-7.1 降维算法之PCA主成分分析

降维算法是一类数据处理技术&#xff0c;主要用于将高维数据映射到低维空间中&#xff0c;从而减少数据的维度。降维不仅可以减少计算复杂度&#xff0c;提高算法性能&#xff0c;还可以帮助数据可视化。常见的降维算法包括主成分分析&#xff08;PCA&#xff09;、线性判别分析…

冒泡排序写法

正宗的冒泡排序写法&#xff1a; public class BubbleSort {public static void main(String[] args) {int[] a {4,6,5,24,3,7,1};//初始化一个最大角标变量int n a.length-1;//循环轮次for (int i0;i<n;i){//从后向前开始&#xff0c;相邻元素比较大小&#xff0c;小的元…

HTML制作一个时钟走动效果

大家好&#xff0c;今天制作一个时钟走动效果&#xff01; 先看具体效果&#xff1a; 一、以下是一个简单的时钟走动效果的实现&#xff0c;使用了HTML、JavaScript和CSS技术。 <!DOCTYPE html> <html lang"en"> <head> <meta charset"…

【Linux】生物信息学常用基本命令

wget网址用于直接从网上下载某个文件到服务器&#xff0c;当然也可以直接从网上先把东西下到本地然后用filezilla这个软件来传输到服务器上。 当遇到不会的命令时候&#xff0c;可以使用man “不会的命令”来查看这个命令的详细信息。比如我想要看看ls这个命令的详细用法&…

Linux磁盘监控小技巧

作者&#xff1a;田逸&#xff08;formyz&#xff09; 默认情况下&#xff0c;使用Nrpe插件check_disk加选项“-w”与”-c”除了输出我们想监控的磁盘分区外&#xff0c;还输出了一些形如“/dev/shm”不需要监控的项目(如下图所示)&#xff0c;倒对查看起到了一些干扰作用。 从…

解决使用monaco-editor编译器,编译器展示内容没有超过编译器高度,但是出现滚动条问题

前言&#xff1a; 最近在完成项目时&#xff0c;有使用编译器进行在线编辑的功能&#xff0c;就选用了monaco-editor编译器&#xff0c;但是实现功能之后&#xff0c;发现即使在编译器展示的内容没有超过编译器高度的情况下&#xff0c;编译器依旧存在滚动条&#xff0c;会展示…

64、基于去噪卷积神经网络的彩色图像去噪(matlab)

1、基于去噪卷积神经网络的彩色图像去噪的原理及流程 基于去噪卷积神经网络的彩色图像去噪是一种基于深度学习的图像处理技术&#xff0c;可以有效地去除图像中的噪声&#xff0c;提高图像的质量。下面是在Matlab中实现基于去噪卷积神经网络的彩色图像去噪的原理及流程&#x…

01:Linux的基本命令

Linux的基本命令 1、常识1.1、Linux的隐藏文件1.2、绝对路径与相对路径 2、基本命令2.1、ls2.2、cd2.3、pwd / mkdir / mv / touch / cp / rm / cat / rmdir2.4、ln2.5、man2.6、apt-get 本教程是使用的是Ubuntu14.04版本。 1、常识 1.1、Linux的隐藏文件 在Linux中&#xf…

centos7 mqtt服务mosquitto搭建记录

1、系统centos7.6&#xff0c;安装默认版本 yum install mosquitto 2、启动运行 systemctl start mosquitto 3、设置自启动 systemctl enable mosquitto 4、修改配置文件 vim /etc/mosquitto/mosquitto.conf 监听端口&#xff0c;默认为1883&#xff0c;需要修改删除前面…