前端做整站是开发,例如:前端是用了vue创建初始化项目,后端我们不会php、java等,我们只能用node去创建去做后端代码,本文就给大家讲解最基础的从零开始创建一个项目的后端环境。

  一般来说前后端代码肯定是分离的,但是也有不分离的情况例如jsp代码,本文讲解前后端分离的情况。

前后端项目分离,这样后端的项目创建就不需要在前端的代码里,相当于是两个独立的工程。

一:首先全局安装Node的express 框架

当然安装过的就不需要在执行这个步骤了。

cnpm i -g express-generator

安装完之后通过

express --version

来查看版本,注意这里只能提供这种方式去查看版本号不能通过 -v 查看版本号。

 

2、进入我们的后端项目文件夹生成一个默认的后端 node wxpress项目

express server

3、这时候目录下面会默认生成一个sever 的目录,进入目录,然后执行

npm install

4、如何启动项目呢,其实可以看 package.json

控制台执行

 node ./bin/www

在浏览器 执行

 localhost:

一般来说 Node 的项目的端口号都是 3000

起来之后看到这个就代表好了

项目起来之后

后端项目一般都是用的是 jade 的引擎去写的,如果不舒服可以换成 html 的,

首先先安装 ejs

 cnpm i ejs —save

然后修改app.js,新增

var ejs = require('ejs’);

app.engine('.html',ejs.__express);

修改

app.set('view engine', ‘jade’);

app.set('view engine', 'html');

这样就可在 views 下面新建 html 的页面了,每次做完修改都需要重新启动

Node ./bin/www

other、这里介绍另一种启动方式

1、利用 pm2 启动,首先在 node 的项目按照

cnpm install pm2 --save

2、安装完之后进入项目根目录

执行

pm2 start bin/www

这个是进程式的管理,并且这种方法启动项目后,控制台还可以继续做其他的操作。

3、关闭项目

// 关闭的话,关闭所有
pm2 stop all
// 关闭某一个
pm2 stop bin/www 跟启动的方法相对应

 

前后端不分离项目

  如果我们想吧这个项目放到 例如 vue-cli 构建的项目中,直接在 项目根目录下去创建项目就行,让 server 文件夹和 sec build 在一个目录下就可以

合并的话,只需要吧 server 里面的 package.json 文件里面的

"dependencies": {
"body-parser": "~1.18.2",
"cookie-parser": "~1.4.3",
"debug": "~2.6.9",
"ejs": "^2.5.7",
"express": "~4.15.5",
"jade": "~1.11.0",
"mongoose": "^4.13.9",
"morgan": "~1.9.0",
"serve-favicon": "~2.4.5"
}

这些项目依赖复制到 vue 的 package.json里面去就可以了,然后在初始化一下就行。

启动的话 方法不变,vue的启动还是以前的,server的启动也不变,进入 server > bin 执行 node www 就可以了

项目目录介绍:

bin/www 是项目的启动目录

public 是放一些静态资源的地方

routes 是项目的路由

views 是项目的 页面代码

app.js 项目的配置

 

 

利用node、express初始化项目的更多相关文章

  1. 利用node,跑项目。

    (前提是已经安装了node) 一.简单介绍  Vue开发|文件目录结构部署 目录结构 ├── index.html 入口页面 ├── build 构建脚本目录 │ ├── build-server.j ...

  2. 搭建简单的node+express+mongodb项目

    安装 首先要确保已经安装了 Node.js,接下来创建一个目录,然后进入此目录并将其作为当前工作目录. mkdir myapp cd myapp 通过 npm init 命令为应用创建一个 packa ...

  3. node express新项目默认主文件app.js

    var express = require('express'); var path = require('path'); var favicon = require('serve-favicon') ...

  4. 使用node初始化项目

    初始化项目 在建项目的时候经常会建很多文件夹和文件,今天使用node初始化项目自动生成这些内容. 执行步骤 执行命令 node init 初始化项目生成package.json 设置配置文件 var ...

  5. node+express+mysql 实现登陆注册

    基于 node.express.mysql 实现的登录注册. 1.`首先在终端中 安装 node .` 2.`通过npm install express -g 命令全局安装 express`. 3.` ...

  6. 如何利用express新建项目(上)

    如何利用express新建项目(上) 摘要 这篇文章将讲解了如何快速利用express新建项目 一.express4.x的安装 1. npm install -g express 2. npm ins ...

  7. Node.js Express+Mongodb 项目实战

    Node.js Express+Mongodb 项目实战 这是一个简单的商品管理系统的小项目,包含的功能还算挺全的,项目涵盖了登录.注册,图片上传以及对商品进行增.删.查.改等操作,对于新手来说是个很 ...

  8. 如何搭建node - express 项目

    基于博主也是个菜鸟,亲身体验后步骤如下: 首先,我们需要安装node.js,  https://www.runoob.com/nodejs/nodejs-install-setup.html 安装完成 ...

  9. 一:项目简介(node express vue elementui axios)

    一:项目基本构造 ** 项目一共有 16 个页面,是一个电商网销项目,自己在网上的某网上找的一个要做的网站的设计图: 页面主要包括:  登录页 -- 注册页 -- 首页 -- 产品列表页 -- 产品详 ...

随机推荐

  1. java.awt.headless 参数说明

    在使用Java处理图形应用时,经常有人推荐设置 -Djava.awt.headless=true,具体含义和效果查了一下,记录在这里分享 Headless模式是系统的一种配置模式.在该模式下,系统缺少 ...

  2. 洛谷——P2639 [USACO09OCT]Bessie的体重问题Bessie's We…

    https://www.luogu.org/problem/show?pid=2639 题目描述 Bessie像她的诸多姊妹一样,因为从Farmer John的草地吃了太多美味的草而长出了太多的赘肉. ...

  3. N天学习一个Linux命令之sudo

    前言 新项目打算采用运维搭建的发布系统发代码,发布后生效前需要做一些处理,因为发布系统登录目标机器使用的是非root账号,所以需要使用sudo来提升权限.当执行sudo cd /xxx/xx时会提示报 ...

  4. 相克军_Oracle体系_随堂笔记 PPT

    http://www.cnblogs.com/jyzhao/category/581259.html http://download.csdn.net/detail/yzj149286454/8960 ...

  5. 关于压缩软件gzip和xz的简单对照

    晚上因为处理磁盘报警的须要.进行了日志压缩,在此次压缩中分别使用了gzip和xz软件对文本进行了压缩.压缩的结果很令人诧异. 出于对xz好奇的原因是因为在下载内核源码时常常能够看到.xz格式的文件包. ...

  6. Git 主要的工作流程

    Git使用个进制字符的SHA- Hash来唯一标识对象 如:e98757d0598ab6eeaf1df0d87dd00826048bd80b git 有种对象 1.blob 表示文本文件,二进制文件或 ...

  7. Zend_Form 创建、校验和解析表单的基础--(手冊)

    1.  创建表单对象 创建表单对象很easy:仅仅要实现 Zend_Form: <?php $form = newZend_Form; ? > 对于高级用例.须要创建 Zend_Form ...

  8. Linux -- 内存控制之oom killer机制及代码分析

    近期,线上一些内存占用比較敏感的应用.在訪问峰值的时候,偶尔会被kill掉,导致服务重新启动.发现是Linux的out-of-memory kiiler的机制触发的. http://linux-mm. ...

  9. 保存Activity的状态

    一般来说, 调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的全部信息和状态数据不会消失, 当activity又一次回到前台之后, 全部的改变都 ...

  10. 【Ubuntu QQ】记如何在Ubuntu上安装QQ(附下载)

    什么困扰着一批批的ubuntu桌面用户?是麻花藤.哦不,是QQ,怎么在ubuntu上安装完美无瑕的QQ. 最佳解决方案在“三”部分,当然前两个也不失为解决方案 一.尝试的开始 配置: 双系统:Wind ...