Node.js的快速入门

一、Node.js模块化开发

1.JavaScript开发弊端

JavaScript在使用时存在两大问题,文件依赖命名冲突

2.Node.js中模块化开发规范

  • Node.js规定一个JavaScript文件就是一个模块,模块内部定义的变量和函数默认情况下在外部无法得到

  • 模块内部可以使用exports对象进行成员导出, 使用require方法导入其他模块。

 // a.js
  // 在模块内部定义变量
 let version = 1.0;
 // 在模块内部定义方法
 const sayHi = name => `您好, ${name}`;
 // 向模块外部导出数据 
 exports.version = version;
 exports.sayHi = sayHi;
  // b.js
  // 在b.js模块中导入模块a
 let a = require('./b.js');
  // 输出b模块中的version变量
 console.log(a.version);
  // 调用b模块中的sayHi方法 并输出其返回值
 console.log(a.sayHi('黑马讲师')); 

3.模块成员导出的另一种方式

module.exports.version = version;
module.exports.sayHi = sayHi;
  • exports是module.exports的别名(地址引用关系),导出对象最终以module.exports为准

二、系统模块

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

1.系统模块fs文件操作

f:file 文件 ;s:system 系统,文件操作系统。

const fs = require('fs');

读取文件内容
fs.reaFile('文件路径/文件名称',['文件编码'],callback);

写入文件内容
fs.writeFile('文件路径/文件名称', '数据', callback);

const content = '<h3>正在使用fs.writeFile写入文件内容</h3>';

fs.writeFile('../index.html', content, err => {
   if (err != null) { 
       console.log(err);
       return;
   }
   console.log('文件写入成功');
 });

2.系统模块path路径操作

2.1路径拼接语法

path.join('路径', '路径', ...)

  // 导入path模块
 const path = require('path');
  // 路径拼接
 let finialPath = path.join('itcast', 'a', 'b', 'c.css');
  // 输出结果 itcast\a\b\c.css
 console.log(finialPath);

2.2 相对路径和绝对路径

  • 大多数情况下使用绝对路径,因为相对路径有时候相对的是命令行工具的当前工作目录

  • 在读取文件或者设置文件路径时都会选择绝对路径

  • 使用__dirname获取当前文件所在的绝对路径

三、第三方模块

2.获取第三方模块

npmjs.com:第三方模块的存储和分发仓库

3.第三方模块 nodemon

  • nodemon是一个命令行工具,用以辅助项目开发。

  • 在Node.js中,每次修改文件都要在命令行工具中重新执行该文件,非常繁琐。

使用步骤:

  • 使用npm install nodemon –g 下载它

  • 在命令行工具中用nodemon命令替代node命令执行文件

posted @ 2022-09-16 15:39  准备开始  阅读(99)  评论(0)    收藏  举报