node.js学习笔记-快速搭建一个 Express 项目的基本骨架(一)

devtools/2024/11/16 2:31:17/

一、前言

express-generator是 Express 框架提供的一个应用程序生成器工具,它可以帮助你快速搭建一个 Express 项目的基本骨架,节省大量手动创建文件和配置的时间。

以下是关于它的详细介绍和使用步骤:

二、安装

首先,确保你已经安装了 Node.js 和 npm(通常在安装 Node.js 时会一并安装 npm)。然后,在全局范围内安装express-generator,可以通过以下命令进行安装:

npm install -g express-generator

这里的-g参数表示全局安装,这样你就可以在任何目录下使用express-generator工具了。

三、使用步骤

1、创建项目骨架

在你想要创建 Express 项目的目录下,打开命令行工具,然后使用express-generator来生成项目骨架。例如,要创建一个名为my-express-app的项目,可以执行以下命令:

express my-express-app

执行这个命令后,express-generator会在当前目录下创建一个名为my-express-app的新文件夹,并在其中生成一系列的文件和文件夹,这些构成了 Express 项目的基本框架。

express-generator 生成的项目通常具有以下典型的结构:

  • app.js:这是项目的核心文件,用于配置 Express 应用程序,包括设置中间件、定义路由等。
  • bin/www:这个文件主要负责启动服务器,它会加载 app.js 中的配置并监听指定的端口。
  • routes:这是一个文件夹,里面包含了各种路由文件,用于定义不同路径下的请求处理逻辑。例如,index.js 路由文件通常处理根路径 / 的请求。
  • views:这是一个文件夹,用于存放视图文件(如果项目使用视图模板引擎的话)。常见的视图模板引擎有 Ejade、Pug 等,不同的模板引擎对应不同格式的视图文件。
  • public:这是一个文件夹,用于存放公共资源,如样式表、脚本文件、图片等。

通过使用 express-generator,你可以快速上手 Express 项目的开发,并且可以根据项目的具体需求对生成的框架进行进一步的扩展和修改。

2、安装依赖

进入刚刚创建的项目文件夹:

cd my-express-app

然后,安装项目所需的依赖项。因为express-generator只是生成了项目的框架,还没有安装实际运行项目所需的各种 Node 模块。在项目目录下执行以下命令来安装依赖:

npm install

这会根据package.json文件中的配置,将项目所需的所有依赖包(如 Express 框架本身、各种中间件等)安装到项目的node_modules文件夹中。

3、启动项目

在安装完依赖后,就可以启动 Express 项目了。在项目目录下的命令行中执行以下命令:

npm start

或者,如果你查看package.json文件,会发现start对应的脚本命令可能是node bin/www(这是express-generator生成的默认启动方式),所以你也可以直接执行:

node bin/www

项目启动后,默认会在本地的3000端口监听请求。如果一切正常,你应该能看到 Express 框架的默认欢迎页面。

Express 框架的默认欢迎页面

如果我在public文件路径下增加html/index.html

你可以在浏览器中输入http://127.0.0.1:3000/html/index.html来访问项目,可以看到自定义的页面index.html

html/index.html


http://www.ppmy.cn/devtools/134319.html

相关文章

万字长文解读机器学习——感知机、MLP、SVM

🌺历史文章列表🌺 机器学习——损失函数、代价函数、KL散度机器学习——特征工程、正则化、强化学习机器学习——常见算法汇总机器学习——感知机、MLP、SVM机器学习——KNN机器学习——贝叶斯机器学习——决策树机器学习——随机森林、Bagging、Boostin…

11.11 机器学习-数据集的获取和划分

# sklearn玩具数据集 # 鸢尾花 数据集使用 from sklearn.datasets import load_iris,load_wine,fetch_20newsgroups # 导入 数据集 load本地 feath联网 from sklearn.model_selection import train_test_split # 数据集划分方法 from sklearn.feature_extraction import Di…

公开一下我的「个人学习视频」!

哈喽,大家好,我是六哥。 鉴于上次分享,很多同学说,六哥能整一些百度网盘的资源吗? 可以,来安排,看看有你心动的吗? 性能测试系列 测开系列 python方向 Java方向 主管必会系列 质…

MySQL中,使用XtraBackup进行备份锁

在MySQL中,使用XtraBackup进行备份时,备份锁的获取方式在MySQL 5.7和8.0之间有所不同。XtraBackup是一个开源的热备份工具,它支持Percona Server和MariaDB,以及Oracle的MySQL。 MySQL 5.7 在MySQL 5.7中,XtraBackup通…

杰控通过 OPCproxy 获取数据发送到服务器

把数据从 杰控 取出来发到服务器 前提你在杰控中已经有变量了(wincc 也适用) 打开你的opcproxy 软件包 opcvarFile 添加变量 写文件就写到 了 opcproxy.ini中 这个文件里就是会读取到的数据 然后 opcproxy.exe发送到桌面快捷方式再考回来 &#…

React Native 全栈开发实战班 - 数据管理与状态之Zustand应用

在 React Native 应用中,状态管理 是构建复杂用户界面的关键。随着应用规模的增长,组件之间的数据共享和状态同步变得越来越复杂。虽然 React 提供了 Context API 作为内置的状态管理解决方案,但在大型应用中,使用更强大的状态管理…

【HAProxy07】企业级反向代理HAProxy高级功能之Cookie 会话保持与HAProxy 状态页

HAProxy 高级功能 介绍 HAProxy 高级配置及实用案例 基于 Cookie 的会话保持 cookie value:为当前server指定cookie值,实现基于cookie的会话黏性,相对于基于 source 地址 hash 调度算法对客户端的粒度更精准,但同时也加重了hap…

K8S如何基于Istio实现全链路HTTPS

K8S如何基于Istio实现全链路HTTPS Istio 简介Istio 是什么?为什么选择 Istio?Istio 的核心概念Service Mesh(服务网格)Data Plane(数据平面)Sidecar Mode(边车模式)Ambient Mode(环境模式)Control Plane(控制平面)Istio 的架构与组件Envoy ProxyIstiod其他组件Istio 的流量管…