Vue.js 和 Node.js 全栈项目的运行与部署指南

Vue.js 和 Node.js 全栈项目的运行与部署指南

  • 前言
  • 具体运行方式
    • 导入数据库初始化
    • 安装配置nodejs
    • 启动server后端
    • 启动client前端
    • 确保前后端正确连接

前言

本博客用来介绍一下一个包含前端和后端代码的全栈项目MoreMall,前端部分使用了 Vue.js,后端部分使用了 Node.js。
项目结构如图:
在这里插入图片描述

Client 代表前端
其中
node_modules/: 存放项目依赖的模块。
public/: 存放公共资源的目录,比如网页里面需要用到的图片素材等等。
src/: 前端源代码目录,Vue 组件和其他资源等。
package.json: 项目依赖和脚本配置文件。
Server 代表后端
其中
bin/: 存放可执行文件的目录,通常用来启动服务器。
commons/: 公共模块目录,包含 db.js(数据库配置)、JSONResponse.js 和 settings.js(设置文件)。
controllers/: 控制器目录,处理业务逻辑。
node_modules/: 存放项目依赖的模块。
public/: 存放公共资源的目录。
app.js: 主应用文件,通常是 Express 应用的入口文件。
package.json: 项目依赖和脚本配置文件。
mall.sql: 数据库 SQL 文件,包含数据库的初始化脚本。

具体运行方式

导入数据库初始化

这里用的是mysql数据库,具体的安装配置,看这篇:mysql安装配置,完成之后,我们搜索找到mysql打开:
在这里插入图片描述
在输入完你的密码之后,创建一个这个项目的数据库,这里就叫做mall:

create database mall;

创建完成之后用 show databases;指令来检查一下里面是不是有mall这个数据库,然后一定要记得使用use mall;指令来确保使用的是这个数据库,不然后面插入数据的时候会报错找不到这个数据库。
在这里插入图片描述
接下来,需要指定新的认证插件,是为了确保客户端或应用程序可以与MySQL服务器兼容,因为某些系统或工具可能不支持MySQL 8.0及更高版本中引入的默认认证插件:

--指定新的认证插件
alter user 'root'@'localhost' identified with mysql_native_password by '你的密码';
-- 刷新权限
flush privileges;

接下来就可以愉快地插入数据库里面的初始数据了
在这里插入图片描述
你可以直接整体执行完这个这个mall.sql,但可能太长了会报错。于是可以选择手动把里面的内容,一次一条或多条手动粘贴到你的数据库里面,执行完了之后select啥的检查一下看看都成功了没有,这一步就完成啦~

安装配置nodejs

具体操作可以看一下:nodejs配置安装
进行这一步操作的时候一定要细心一点,环境变量配置啥的不要打错了。

启动server后端

‘win+R’,输入cmd,打开命令行窗口,选择对应的盘符然后cd转到server文件夹所在的路径,也可以直接找到该文件夹路径然后输入cmd然后回车。在这里插入图片描述

cd bin
node 需要启动的文件名

我这里的命名是www,里面放的就是启动这个后端:
在这里插入图片描述
输入完成之后,如果出现下面这样的情况,也不要慌,就是这个端口号被占用了,打开任务管理器,把冲突的改关的命令行关一下就好啦:
在这里插入图片描述
如果出现下面的结果,恭喜你,已经成功了一半了,说明你的后端正确的运行启动了(注意,这个命令行窗口不要关闭):
在这里插入图片描述

启动client前端

还是老套路,要么’win+R’,输入cmd,打开命令行窗口,选择对应的盘符然后cd转到client文件夹所在的路径,也可以直接找到该文件夹路径然后输入cmd然后回车。
在命令行窗口中输入:

npm run serve

如果出现很多库啥的都没有,可能这个项目里面很多npm有关的依赖没有,需要先执行npm install,如果一切都做好了,应该得到的结果是:
在这里插入图片描述
这个Network:unavailable目前我也还没有解决,可能是防火墙或者服务器啥的有点问题,但是并不影响正常使用,无伤大雅。
接下来,把这个给的这个网址复制输入到浏览器中,看到如下画面,说明你的前端配置正常,已经成功了80%了~
在这里插入图片描述
那这行命令的作用是啥呢?有的项目可能也并不是run sever,这个是在client\package.json里面的,里面会存在几种类型的脚本,选择需要的运行即可,里面的vue-cli-service serve 是 Vue CLI 提供的一个命令,用于启动开发服务器:
在这里插入图片描述

确保前后端正确连接

找到server目录下的数据库设置的部分,如下:
在这里插入图片描述
有的可能直接写在db.js里面了,有的可能单独写在settings.js里面,找到里面的:
在这里插入图片描述
需要确认的有三个地方:

  1. 是你的DB_HOST,记住这个数字,这个是数据库配置项,主要用于连接应用程序与数据库服务器。
  2. 确认你的DB_PASSWORD,看看你的这里的密码和你的SQL的用户密码是不是一样的,更正成你的SQL用户密码
  3. 确认这个DB_DATABASE与你创建的数据库名字是否一样,更正成你所为这个项目创建的数据库的名字

接下来更改client命令行窗口给你的网址,把里面的localhost换成上面的DB_HOST的值,如,我的这个项目是把 http://localhost:8080/换成http://127.0.0.1:8080/。然后再次粘贴到浏览器,发现与之前的界面没有任何变化,并且查看server的命令行窗口发现报错并且运行停止了,再次审查上面那三个需要考虑的地方然后进行更正。

如果正确运行了,界面会变得不一样,会有后端数据进来,会得到结果:
在这里插入图片描述
并且,在后端server的命令行中也可以看到对应的数据交互:
在这里插入图片描述


恭喜你,到此为止,这个项目的运行和部署就成功啦!
如果您感觉这篇文章对您有帮助,希望您能点个赞,谢谢!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot 缓存框架Cache整合redis组成二级缓存

springboot 缓存框架Cache整合redis组成二级缓存 项目性能优化的解决方案除开硬件外的方案无非就是优化sql,减少sql 的执行时间,合理运用缓存让同样的请求和数据库之间的连接尽量减少,内存的处理速度肯定比直接查询数据库来的要快一些。今天就…

逻辑这回事(七)---- 器件基础

Xilinx FPGA创建了先进的硅模块(ASMBL)架构,以实现FPGA具有针对不同应用程序领域优化的各种功能组合的平台。通过这一创新,Xilinx提供了更多的设备选择,使客户能够为其特定设计选择具有正确的功能和功能组合的FPGA。ASMBL体系结构通过以下方式突破了传统的设计障碍:消除几…

使用Llama3/Qwen2等开源大模型,部署团队私有化Code Copilot和使用教程

目前市面上有不少基于大模型的 Code Copilot 产品,部分产品对于个人开发者来说可免费使用,比如阿里的通义灵码、百度的文心快码等。这些免费的产品均通过 API 的方式提供服务,因此调用时均必须联网、同时需要把代码、提示词等内容作为 API 的…

数据倾斜优化:Hive性能提升的核心

文章目录 1. 定义2. 数据倾斜2.1 Map2.2 Join2.3 Reduce 3. 写在最后 1. 定义 数据倾斜,也称为Data Skew,是在分布式计算环境中,由于数据分布不均匀导致某些任务处理的数据量远大于其他任务,从而形成性能瓶颈的现象。这种情况在H…

springboot 3.x相比之前版本有什么区别

Spring Boot 3.x相比之前的版本(尤其是Spring Boot 2.x),主要存在以下几个显著的区别和新特性: Java版本要求: Spring Boot 3.x要求至少使用Java 17作为最低版本,同时已经通过了Java 19的测试,…

可信和可解释的大语言模型推理-RoG

大型语言模型(LLM)在复杂任务中表现出令人印象深刻的推理能力。然而,LLM在推理过程中缺乏最新的知识和经验,这可能导致不正确的推理过程,降低他们的表现和可信度。知识图谱(Knowledge graphs, KGs)以结构化的形式存储了…

马斯克的SpaceX发展历史:从濒临破产到全球领先

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 Space Exploration Technologies Corp.,简称SpaceX,是由埃隆马斯克(Elon Musk)于2002年创办的一…

百度Agent初体验(制作步骤+感想)

现在AI Agent很火,最近注册了一个百度Agent体验了一下,并做了个小实验,拿它和零一万物(Yi Large)和文心一言(ERNIE-4.0-8K-latest)阅读了相同的一篇网页资讯,输出资讯摘要&#xff0…

运维锅总详解Prometheus

本文尝试从Prometheus简介、架构、各重要组件详解、relable_configs最佳实践、性能能优化及常见高可用解决方案等方面对Prometheus进行详细阐述。希望对您有所帮助! 一、Prometheus简介 Prometheus 是一个开源的系统监控和报警工具,最初由 SoundCloud …

[深入理解DDR] 总目录

依公知及经验整理,原创保护,禁止转载。 专栏 《深入理解DDR》 蓝色的是传送门,点击链接即可到达指定文章。 图。 DDR 分类 导论 [RAM] DRAM 导论:DDR4 | DDR5 | LPDDR5 | GDRR6 | HBM 应运而生 运存与内存?内存与存…

UE5蓝图快速实现打开网页与加群

蓝图节点:启动URL 直接将对应的网址输入,并使用即可快速打开对应的网页,qq、discord等群聊的加入也可以直接通过该节点来完成。 使用后会直接打开浏览器。

pc端制作一个顶部固定的菜单栏

效果 hsl颜色 hsl颜色在css中比较方便 https://www.w3school.com.cn/css/css_colors_hsl.asp 色相(hue)是色轮上从 0 到 360 的度数。0 是红色,120 是绿色,240 是蓝色。饱和度(saturation)是一个百分比值…

帮助你简易起步一个BLOG(博客搭建)项目

Blog项目 后端项目结构1. 项目初始化2. 详细步骤3.postman测试 前端1. 项目初始化2. 详细步骤 本章节是为了帮助你起步一个完整的前后端分离项目。 前端技术栈: react、vite、mantine、tailwind CSS、zustand、rxjs、threejs 后端技术栈:nodemon、nodej…

Django项目部署:uwsgi+daphne+nginx+vue部署

一、项目情况 项目根目录:/mnt/www/alert 虚拟环境目录:/mnt/www/venv/alert 激活虚拟环境:source /mnt/www/venv/alert/bin/activate 二、具体配置 1、uwsgi启动配置 根目录下:新增 uwsgi.ini 注意:使用9801端…

redis实战-添加商户缓存

为什么要使用缓存 言简意赅:速度快,好用缓存数据存储于代码中,而代码运行在内存中,内存的读写性能远高于磁盘,缓存可以大大降低用户访问并发量带来的服务器读写压力实际开发中,企业的数据量,少…

短视频矩阵系统:打造品牌影响力的新方式

一、短视频矩阵概念 短视频营销革命:一站式解决策略!短视频矩阵系统是一款专为企业营销设计的高效工具,旨在通过整合和优化众多短视频平台资源,为企业呈现一个全面的短视频营销策略。该系统致力于协助企业以迅速且高效的方式制作…

从万里长城防御体系看软件安全体系建设@安全历史03

长城,是中华民族的一张重要名片,是中华民族坚韧不屈、自强不息的精神象征,被联合国教科文组织列入世界文化遗产名录。那么在古代,长城是如何以其复杂的防御体系,一次次抵御外族入侵,而这些防御体系又能给软…

无人机挂载抛弹吊舱技术详解

随着无人机技术的飞速发展,无人机在军事、安全、农业、环保等领域的应用越来越广泛。其中,挂载抛弹吊舱的无人机在精确打击、应急处置等场合发挥着重要作用。抛弹吊舱技术通过将弹药、物资等有效载荷挂载在无人机下方,实现了无人机的远程投放…

MySQL表解锁

查看锁信息 show full processlist 如果一个表被锁定了,会有一个 “Waiting for table metadata lock” 的提示,表明该表正在等待锁定。 解锁表 删除state上有值的事务 kill query 事务id 表解锁完成

LDM论文解读

论文名称:High-Resolution Image Synthesis with Latent Diffusion Models 发表时间:CVPR2022 作者及组织:Robin Rombach, Andreas Blattmann, Dominik Lorenz,Patrick Esser和 Bjorn Ommer, 来自Ludwig Maximilian University of Munich &a…