一、概念
类似tomcat和apache、IIS一类的web服务器端软件,语法为类javascript。可开发web、app等业务,可实现I/O扩展,包括但不限于蓝牙、com等访问交互;也能实现dll文件的访问。
node.js模块安装通过npm。是node.js主要的构成部分
二、搭建环境
通过官网传送门下载。分为32位/64位,推荐下载稳定版本。
1—windows
按照很简单, 执行安装文件即可,注意勾选“添加path”。
完成之后,在cmd或powershell窗口,执行命令进行验证。
在程序安装目录内建立2个目录。node_global和node_cache
在cmd中执行如下命令,进行npm配置
#设置npm相关目录
npm config set prefix "C:\nodejs\node_global"
npm config set cache "C:\node_js\node_cache"
对环境变量进行配置
- 用户变量path添加目录(指向node_global)
- 系统变量新增NODE_PATH(指向c:\nodejs\)
- 系统变量path新增%NODE_PATH%
设定npm国内镜像地址
# 切换淘宝镜像
# npm config set registry https://registry.npm.taobao.org
npm config set registry https://registry.npmmirror.com
2—centOS
3—安装三方部件
通过cmd或powershell执行npm命令进行安装
# 缩写:install-->i global-->g
# 指定版本号,在插件名称a+@1.0.0
# 安装cnpm,并指定源地址
npm install -global cnpm --registry=https://registry.npm.taobao.org
# 安装 express框架
npm i -g express
三、基础使用
1—npm安装
npm list # 查看已安装包的清单
npm list -g --depth 0 # 查看全局安装包清单
npm update -g <name> # 更新指定包
npm uninstall -g <name> # 反安装指定全局包
2—npm配置
npm config set prefix "<路径>" # 新增/修改配置项目
npm config list # 查看配置项目清单
3—项目部署
# 在项目目录中
npm install # 下载所需插件包
npm start # 启动项目 ,停止项目Ctrl+C
4—版本
# 查询远程包的版本清单
npm view vue versions
# 查看指定版本的远程包的信息
npm info vue@3.2.0
包信息如下
四、基础开发
编辑代码可使用多种脚本编辑器,但推荐viusal studio code,支持代码运行。
安装vs code后,安装扩展包:code runner。
code runner效果如下图
1—helloworld
console.log("hello,world");
console.log("当前路径:"+__dirname);
保存为pro1.js,测试方法:cmd或powershell下。
node pro1.js
2—express框架
# -g参数代表安装于全局,对应目录为node_js\node_module
npm install express -g
npm install -g express-generator # 安装express生成器
# 新增项目 (默认为jade语法)
express helloworld
# 使用ejs语法(类themylef、html语法)
express --view=ejs helloworld
生成文件夹(jade),如下图
bin目录www文件,可修改服务器新端口号,默认为3000
app.js内容
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/users', usersRouter);
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
});
module.exports = app;
view目录内index.jade内容
extends layout
block content
h1= title
p Welcome to #{title}
layout.jade内容
doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
body
block content
3—express部署
安装运行相关包
五、扩展开发
1—访问dll
# 前置安装VS2015。勾选C++,windows8.1SDK
npm i -g --production windows-build-tools # 安装 step/1
# 卡在successfully python 2.7。关闭即可,也可检查一下temp文件相应文件生成
npm config set python "<路径>"
npm config set msvs_version 2015
npm i -g node-gyp # 安装 step/2
npm i --save ffi # 安装 step/3
npm i --save ref # ffi的返回类型
测试效果如下图