nodejs是一门后端语言
nodejs是一门后端语言。
在浏览器 JavaScript 中,通常 window 是全局对象,而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。
安装完nodejs后,默认安装包管理工具npm:
npm install -g cnpm --registry=https://registry.npm.taobao.org 使用淘宝镜像的命令
npm root -g 命令会告全局安装包位置;
npm list -g 查看所有全局安装的模块:
npm list packagename 查看某个模块的版本号
npm ls 到 /node_modules/ 目录下查看包
npm update <package> 更新模块
npm search <package> 搜索模块
npm help <command> 看某条命令的详细帮助
npm cache clear 清空NPM本地缓存
npm uninstall <package> -g|S|D|O 卸载删除已安装的包
nodejs命令行解析js文件是加载在内存里,若修改了js文件需从新关闭服务再重启,比较麻烦,此时可以用node的一个管理监控工具nodemon:
yum install nodemon -D
安装完后,即可用命令开启后一直监控而不用重复的结束服务再开启服务:
//node脚本修改后,热启动node服务,用nodemon包来管理
nodemon service.js
npm和yarn的区别,该如何选择?
Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具 ,正如官方文档中写的,Yarn 是为了弥补 npm 的一些缺陷。
npm 和 Yarn命令对比
npm install ==> yarn
npm install react --save ==> yarn add react
npm uninstall react --save ==> yarn remove react
npm install react --save-dev ==> yarn add react --dev
npm update --save ==> yarn upgrade具体怎么选择:
https://www.jianshu.com/p/254794d5e741
当然,还有个npx,怎么用?
npx(node自带或者npm install -g npx)
作用:解决调用项目内部安装的模块问题 。原理很简单,就是运行的时候,会到node_modules/.bin路径和环境变量$PATH里面,检查命令是否存在。
//比如,运行已安装的egg-sequelize 类映射orm node_modules模块
npx sequelize init:config
npx sequelize init:migrations
//推荐看阮老师详细教程
//http://www.ruanyifeng.com/blog/2019/02/npx.html
区别 exports 和 module.exports 的使用
exports :对外暴露属性或方法
module.exports : 暴露对象(类似class,包含了很多属性和方法)。
//exports 暴露方法 router ==>文件router.js
exports.router = function(){ console.log('router..')}//引用 exports 暴露的方法 router
const router = require('./router')
router.router()//module.exports 暴露class类people ==>文件people.js
module.exports.people = {name:'xxxxx',
}
//引用 module.exports 暴露class类people
const people = require('./people')
console.log(people.name)
注意一下的路径:
//当前脚本的绝对路径; 如果在模块中,返回的值是模块文件的路径
console.log(__filename)
//当前执行脚本所在的目录
console.log(__dirname)
web框架:express 和 koa2
Express 应用程序生成器
mkdir testapp && cd testapp
1.通过 npx (包含在 Node.js 8.2.0 及更高版本中)
$ npx express-generator
npx: 10 安装成功,用时 1.593 秒warning: the default view engine will not be jade in future releaseswarning: use `--view=jade' or `--help' for additional optionscreate : public\create : public\javascripts\create : public\images\create : public\stylesheets\create : public\stylesheets\style.csscreate : routes\create : routes\index.jscreate : routes\users.jscreate : views\create : views\error.jadecreate : views\index.jadecreate : views\layout.jadecreate : app.jscreate : package.jsoncreate : bin\create : bin\wwwinstall dependencies:$ npm installrun the app:$ DEBUG=app:* npm start2. npm install 拉取模块包
3. MacOS 或 Linux 中,通过如下命令启动此应用:
$ DEBUG=testapp:* npm start
在 Windows 中
> set DEBUG=testapp:* & npm start4.用nodemon自动更新替代node启动app
nodemon ./bin/www5.默认3000端口
在浏览器中打开 http://localhost:3000/
https://www.expressjs.com.cn/starter/generator.htmlkoa2* 注意* 1.在use内的异步函数体内 await next() 调用下一个中间件;* 2.use koa-bodyparser 务必写在 use router之前
https://segmentfault.com/a/1190000018241491
https://www.jianshu.com/p/e0fd2bf0590fkoa2模板引擎ejs ,或 Nunjucks
npm install koa-views
npm install ejs//配置模板引擎中间件
app.use(views('views', {extension: 'ejs'
}));引入静态包管理 koa-static 模块
npm install koa-static//配置静态资源中间件,或写成 app.use(static("./static"))
app.use(static(__dirname + "static"));
重点推荐阿里的egg,是基于koa2扩展,mvc模型,包含了中间件,定时器,和拓展
egg安装
mkdir egg-test && cd egg-test
npm init egg --type=simple
npm install 或 npm i
nodejs是一门后端语言相关推荐
- 前端要不要学习一门后端语言_这是一门免费课程,可帮助前端开发人员学习数学
前端要不要学习一门后端语言 Are you looking to become a more effective developer by improving your fundamental mat ...
- web后端语言_web前端学习路线图_快速入门web前端学习路线图
如何学好Web前端开发技术?前端学习路线是什么?如今,移动开发的发展依旧如火如荼,企业对于Web前端人才需求产生了巨大的缺口,从事Web前端开发的程序员们则是其中较大的获益者.Web前端的广泛运用,造 ...
- node.js是后端语言,前端要学会使用
虽然说nodejs是运行在服务器的javascript,但是它还是后端服务.身为前端开发大神的你我他,为何要学习这门后端语言.原因如下. 1: 现在前端开发流行框架无非就是angular.vue.re ...
- 基于NodeJS的全栈式开发(基于NodeJS的前后端分离)【转】
随着不同终端(Pad/Mobile/PC)的兴起,对开发人员的要求越来越高,纯浏览器端的响应式已经不能满足用户体验的高要求,我们往往需要针对不同的终端开发定制的版本.为了提升开发效率,前后端分离的需求 ...
- RDC如何构建一个基于NodeJS的前后端项目
摘要: 最近在将公司的持续集成架构做一个系统的调整,调整过程中受到了RDC团队大量的帮助,所以利用国庆时间写了几篇RDC的分享,希望能让更多的人了解和用好RDC这个产品. 我会把我最近3个月的使用体会 ...
- 后端语言c,大前端的后端语言
前端基本 1.ES5 ES6 ES7 2.html5 css3 3.Less 和 Sass 4.SVG Canvas D3.js //图形数据可视化 5.WebGL Three.js 3d场景 6.C ...
- java后端框架选型_后端语言选型浅谈
前不久回答了一个关于后端语言选型的问题,写的回答也让笔者有了很多感触,因此在这里谈论下自己对后端语言选型的心得体会,姑且算是抛砖引玉,希望大家能分享各自的心得. 后端语言发展历史 Web 后端语言的兴 ...
- 后端语言除了java_浅谈后端语言优缺点
浅谈后端语言优缺点 兄弟连教育在前不久,回答了一个关于后端语言选型的问题,那么后端语言都有哪些,存在什么样的优缺点?因此兄弟连与大家分享一下心得. 语言优缺点 C/C++ C 语言虽然是非常贴近操作系 ...
- 前端工程师,掌握哪个后端语言好一些?
作为一名IT从业者,我来回答一下这个问题. 对于前端开发人员来说,要想学习一门后端编程语言,目前有三个比较不错的选择,分别是PHP.Java和Python. 如果想快速掌握一门后端编程语言,而且未来想 ...
最新文章
- Java Se:自定义ClassLoader
- 2019-11-10 秩和奇异的一些概念
- MyBatis——动态SQL讲解
- PHP 会话 线程 进程,php进程后台调用(多线程/进程)
- 一次面试留下的实际应用问题。关于HttpModule,IIS集成模式。
- spring连接mysql出现问题_spring+hibernate连接mysql问题啊
- 关于最近很火的“快用苹果助手”和“pp助手”使用正版软件闪退问题的说明
- USBCAN分析仪在汽车检测上的应用
- android定位欺骗,1020. Android GPS定位欺骗(模拟定位)的3类途径4种方式
- 使用VBA通过Excel生产Word报告
- 【解决办法】EFI分区扩容/win10更新提示“我们无法更新系统保留的分区”
- <2021SC@SDUSC>【Overload游戏引擎】OvCore源码模块分析(三)——GlobalHelpers
- 2021-11-26 pyautogui 配合雷电模拟器实现手机APP签到答题自动化
- 新库上线 | CnOpenData中国各地区方言信息数据
- 设置日语输入法遇到的各种问题
- secureCRT命令行字符重叠只显示一半
- css clip-path 画五角星
- 算法笔记胡凡 第3章 入门篇
- webp转换gif动图的方法-批量转换并保留动画效果
- Pytorch JIT 使用经验总结