技术栈css
以为好的欢迎点个star ^_^。html
演示前端
目录node
├─bin │ www // 后端 服务器 │ database // 后端 数据库 │ socket // 后端 socket | router // 后端 路由 ├─sessions // 后端 session ├─public │ src // 前端 开发目录 │ dist // 前端 线上目录 ├─routes // 前端 路由 ├─view // 前端 页面 ├─app.js // 前端 服务器 ├─gulpfile.js // 前端 Gulp ├─package.json
安装git
Windows安装教程 | Linux安装教程github
git clone https://github.com/bergwhite/nodejs-chat // 克隆项目 cd nodejs-chat // 进入目录 npm install // 安装依赖 npm run build // 构建 线上代码 npm run mongod // 开启 数据库 npm run start // 开启 聊天室
功能mongodb
优化数据库
< >
等特殊标签部署npm
踩坑json
图灵机器人不支持跨域,经过代理中间件把请求代理到本地。
var proxy = require('http-proxy-middleware'); app.use('/api/robot', proxy({ target: 'http://www.tuling123.com', changeOrigin: true }));
Gulp使用通配符对多个文件处理,会压缩到一个文件中。如下是分别进行压缩的方式。
const gulp = require('gulp'), minifyJS = require('gulp-uglifyjs'), babel = require('gulp-babel'), rename = require('gulp-rename'); const compileDir = { css: { src: 'public/src/css/index.less', dest: 'public/dist/css' }, js: { src: 'public/src/js/', dest: 'public/dist/js' } }; gulp.task('compile-js', () => { const JSTaskList = ['index', 'login', 'mobile', 'room', 'roomAdd', 'userInfoMod', 'roomMember'] return JSTaskList.map((e) => { gulp.src(`${compileDir.js.src}${e}.js`) .pipe(babel({ presets: ['es2015'] })) .pipe(minifyJS()) .pipe(rename((path) => { path.basename += '.min' })) .pipe(gulp.dest(compileDir.js.dest)) }) });
gulp-uglifyjs - No files given; aborting minification
以前删除了一个JS文件,可是没有删除JSTaskList中的对应值。编译时会报上面的错误。删除对应的值就编译成功了。