npm将包安装到了什么地方?

2022-07-15 09:30:59 浏览数 (1)

有很多细节性的内容,我们通常去看别人写的文章,其实文档里早就写好了,只要看文档看的细致一些就行。

准备花一段时间把Node的官方文档仔细的读一遍,然后总结一些常见的内容。今天总结了7个比较小的问题,汇总的比较简单。

NodeJs和浏览器的异同点

两者都使用Javascript。浏览器主要处理用户交互,浏览器中有dom,bom,window对象及其他相关的Api。而nodeJs可以控制环境,版本升级较快,可以使用最近的Js语法。浏览器则可能被这些语法阻塞。浏览器使用es的模块机制,nodeJs使用commonJs规范。

如何退出Node程序

ctrl-c

控制台中的node程序,我们可以使用ctrl-c进行结束任务

process

  • process模块提供了一个结束node程序任务的方法process.exit() 当我们执行process.exit, node程序立即被终结。
  • process.kill 还有一个方法是 process.kill
代码语言:javascript复制
process.kill(process.pid,'SIGTERM')

读取环境变量

process模块儿提供了 env 属性,携带了所有的变量信息。

代码语言:javascript复制
process.env.NODE_ENV // 'production'

从命令行接受参数

启动node程序时我们可以传递任意参数

代码语言:javascript复制
node app.js

参数可以单独传,也可以以键值对的形式传:

代码语言:javascript复制
// 直接传
node app.js terrence

// 键值对
node app.js name=terrence

我们可以通过process对象来读取参数。process对象提供了一个属性 argv,包含了一个接受到的参数数组。

数组中的第一项是,node 命令的全路径 数组中的第二项是,执行文件的全路径 剩下的是当前接收的参数

可以通过遍历获取当前接受的参数:

代码语言:javascript复制
process.argv.forEach((val,index)=>{
  console.log(`${index}:${val}`)
})

可以创建一个新的数组来获取当前的参数:

代码语言:javascript复制
const args = process.argv.slice(2)

输出内容到命令行

命令行中输出内容主要用到console模块儿。

我们可以使用console对要输出的内容进行格式化

  • %s 格式化为字符串
  • %d格式化为数字
  • %i 格式化部分数字
  • %o格式化为对象

console.count()

可以统计变量被打印的次数

console.countReset()

可以重置变量被打印的次数

输出带颜色的文本

代码语言:javascript复制
console.log('x1b[33m%sx1b[0m', 'hi!')

但是通常用封装好的 chalk

进度条

progress包,非常方便

代码语言:javascript复制
const ProgressBar = require('progress')

const bar = new ProgressBar(':bar', { total: 10 })
const timer = setInterval(() => {
  bar.tick()
  if (bar.complete) {
    clearInterval(timer)
  }
}, 100

利用exports导出代码块

可以导入由别的文件暴露出的函数

代码语言:javascript复制
const library = require('./library')

module.exports

module模块允许我们使用module.exports导出对应的信息

代码语言:javascript复制
const getName = () => {
  return 'terrence'; 
}
module.exports = getName

另外一方式是将要导出的对象作为exports的一个属性:

代码语言:javascript复制
const car = {
 brand:'Ford',
  modal:'Fiesta'
}

exports.car = car

或者

代码语言:javascript复制
exports.car = {
  brand:'Ford',
  modal:'Fiesta'
}

npm 将包安装到了什么地方

本地安装

代码语言:javascript复制
npm install lodash

本地安装直接安装在当前文件夹中的node_modules文件夹中

全局安装

代码语言:javascript复制
npm install -g lodash

mac 系统或 linux系统下:会在 /usr/local/lib/node_modules 路径下 windows 下:会在 C:/Users/your_name/AppData/Roaming/npm/node_modules路径下

后记

很多知识点我们不知道,其实是因为没有仔细的读过其文档中的内容,因为文档读起来比较晦涩,近期的打算就是将node的文档仔细读一遍,然后有所体会,做些总结。

0 人点赞