node&git&github

node 开发概述

  • node是基于Chrome v8引擎的javascript 代码运行环境
  • 浏览器能够运行javascript 代码,浏览器就是 javascript 代码运行环境
  • node能够运行javascript 代码,node就是 javascript 代码运行环境

暴露

const add = (a,b)=> a+b;
exports.add = add;//暴露函数/方法 让外部可以引用add 方法
module.exports.add = add;
// exports 和 module.exports 指向同一个对象的时候 结果一样, 如果是指向的不同页面, 则以module.exports 指向的为准

引用,引用暴露文件

//const a = require('./mon.js');//引入文件  后缀名可以省略
const a = require('./mon');
console.log(a.add(10,20));

在终端使用。打开

  • 终端输入node + 文件名
  • 例如:
  • node monb.js

什么是系统模块

  • node运行环境提供的API 因为这些api 都是以模块化的方式进行开发的,所以我们又称node运行环境提供的api 为系统模块

系统模块 fs 文件操作

  • f:file 文件 ,s:system 系统 ,fs:文件操作系统
  • const fs = require(‘fs’);//引入fs 模块
  • fs.readFile(‘文件路径/文件名称’,[‘文件编码’],callback);//语法规范
const fs = require('fs');//引入fs 模块
fs.readFile('./in.text',(err,doc)=>{
    //如果文件读取发生错误,参数err的值为错误对象,正确err 的值为null
    //doc 参数为文件内容
    if(err === null ){
        //控制台中输出文件内容
        console.log(doc.toString());
    }
});

系统模块 fs 写入文件内容

  • -fs.writeFile(‘文件路径/文件名称’,‘数据(写入内容的数据)’,callback);//写入文件内容
const fs = require('fs');//引入fs 模块
fs.writeFile('./fs.text',`需要写入的内容`,(err,doc)=>{
   if( err !== null){
       console.log(err);
       return;
   }
   console.log('文件成功写入');
});

系统模块path 路径操作

为什么要路径拼接

  • 不同操作系统的路径分隔符不统一
  • /pubilc/uploads/avatar
  • windows 上是\ /
  • lunux 上是 /

拼接语法

  • path.join('路径 ','路径 ','路径 '…)//拼接语法
//path.join('路径1 ','路径2 ','路径3 '...)//拼接语法
const path = require('path');//引入path 模块
let finialPath = path.join('fs.text','in.text');
console.log(finialPath);

node相关模块操作都需要在终端执行 node + 执行的文件名 才会有结果

相对路径 vs 绝对路径

  • 大多数情况下使用绝对路径。因为相对路径有时候相对的是命令行工具的当前工作目录
  • 在读取文件或者设置文件路径都会选择绝对路径
  • 使用 __dirname 获取对当前文件所在的绝对路径
const fs = require('fs');//引入fs 模块
const path = require('path');//引入path 模块
console.log(__dirname);
console.log(path.join(__dirname,"in.text"));

fs.readFile(path.join(__dirname,"in.text"),(err,doc)=>{
console.log(err);
console.log(doc.toString());
});

  • cdm 终端输出结果
PS C:\Users\Allan\Desktop\数据获取\nodejs> node monb.js
C:\Users\Allan\Desktop\数据获取\nodejs
C:\Users\Allan\Desktop\数据获取\nodejs\in.text
null
<Buffer e5 8d 83 e5 b1 b1 e9 b8 9f e9 a3 9e e7 bb 9d 0d 0a e4 b8 87 e5 be 84 e4 ba ba e8 b8 aa e7 81 ad 0d 0a e5 ad a4 e8 88 9f e8 93 91 e7 ac a0 e7 bf 81 0d ... 16 more bytes>

PS C:\Users\Allan\Desktop\数据获取\nodejs> node monb.js
C:\Users\Allan\Desktop\数据获取\nodejs
C:\Users\Allan\Desktop\数据获取\nodejs\in.text
null
千山鸟飞绝
万径人踪灭
孤舟蓑笠翁
独钓寒江雪
PS C:\Users\Allan\Desktop\数据获取\nodejs> 

node 第三方模块

  • 别人写好的,具有特定功能的,我们能直接使用的模块 即第三方模块,由于第三方模块都是由多个文件组成并且被防止在一个文件中,所以又名 包;

第三方模块的两种形式

  • 以js 文件的形式存在,提供实现项目具体功能的api接口
  • 以命令行工具形式存在,辅助项目开发

获取第三方模块

  • npm (node packge manager):node 的第三方模块管理工具
  • npm install formidable // 下载formidable
  • npm uninstall formidable //删除formidable
  • 全局安装和本地安装

nodemon 第三方模块

  • nodemon是一个命令行工具,用以辅助项目开发
  • 在node.js 中每次修改文件都要在命令行工具中重新执行该文件,非常繁琐, 但nodemon 更改文件后会自动启动
  • 使用步骤:
  1. 使用 npm install nodemon -g 下载
  2. 在命令行 nodemon 文件名 //执行
  3. ctrl + c 在命令行是终止结束的意思

nrm 第三方模块

  • nrm(npm registry manager) :npm 下载地址切换工具
  • npm 默认的下载地址在国外,国内下载速度慢
  • 使用 npm install nrm -g 下载它
  • 查询可以下载地址列表 nrm ls
  • 下载地址 nrm use下载地址名称

Gulp 使用

  • 项目上线 html css js 文件压缩合并
  • 语法转换 es6 less 。。。。。。
  • 公共文件抽离
  • 修改文件浏览器自动刷新
gulp 下载 使用
  • npm install gulp 下载gulp库文件
  • 在项
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值