nodejs工作杂记

nodejs工作杂记

1.文件

  • 1. __dirname&process.cwd
    有时候需要获取执行文件的路径;有时候需要获取执行程序的路径;通常两者是相通
console.log('__dirname'+ __dirname);
console.log(process.cwd())**
  • 2.文件监护
    监视filename文件的变化。每当文件被访问的时候都会调用listener。
    第二个参数可选。如果有,它必须包含两个boolean参数(persistent和interval)的对象。persistent指定文件被监视时进程是否继续运行。interval指定了查询文件的间隔,以毫秒为单位。缺省值为{ persistent: true, interval: 5007 }。
    listener有两个参数,第一个为文件现在的状态,第二个为文件的前一个状态:
    listener中的文件状态对象类型为fs.Stat。
    如果想修改文件时被通知,而不是访问的时候就通知,可以比较curr.mtime和prev.mtime。
fs.watchFile('cf.js',function (curr,prev) {
    console.log('curr:' + JSON.stringify(curr))
    console.log('prev:'+ JSON.stringify(prev))
})

输出日志json:

curr:
{
    "dev":16777220,
    "mode":33188,
    "nlink":1,
    "uid":501,
    "gid":20,
    "rdev":0,
    "blksize":4096,
    "ino":5602444,
    "size":17,
    "blocks":8,
    "atimeMs":1549942834285.3027,
    "mtimeMs":1549942833665.7556,
    "ctimeMs":1549942833667.6865,
    "birthtimeMs":1549942833665.6511,
    "atime":"2019-02-12T03:40:34.285Z",
    "mtime":"2019-02-12T03:40:33.666Z",
    "ctime":"2019-02-12T03:40:33.668Z",
    "birthtime":"2019-02-12T03:40:33.666Z"
}
prev:
{
    "dev":16777220,
    "mode":33188,
    "nlink":1,
    "uid":501,
    "gid":20,
    "rdev":0,
    "blksize":4096,
    "ino":5602412,
    "size":7,
    "blocks":8,
    "atimeMs":1549942825808.4336,
    "mtimeMs":1549942793004.5999,
    "ctimeMs":1549942793005.0823,
    "birthtimeMs":1549942793004.5066,
    "atime":"2019-02-12T03:40:25.808Z",
    "mtime":"2019-02-12T03:39:53.005Z",
    "ctime":"2019-02-12T03:39:53.005Z",
    "birthtime":"2019-02-12T03:39:53.005Z"
}

2.process

  • 1.process.env.NODE_ENV
    NODE_ENV默认是无值undefined,需要手动设置
process.env.NODE_ENV = 'dev'
console.log(process.env.NODE_ENV)
  • 2. process.env.SHELL
    获取shell脚本路径/bin/bash

初始化项目注意事项

获初始化步骤:

  • 1. 全局安装typescript
  • 2. 构建node.js项目
    npm init
  • 3. 生成tsc配置文件(tsconfig.json
    tsc --init
  • 4.在项目中,有时候需要用到import来引入自己建立的模块或是引入第三方模块,然而由于typescript的机制,直接import是不行的,这个时候就需要安装@types/node依赖
    npm install --save-dev @types/node
  • 5.编辑ts文件并且监控
    tsc -w
    [16:11:01] Starting compilation in watch mode…
    [16:11:04] Found 0 errors. Watching for file changes.
  • 6.如果使用import别的模块,需要安装@types/*,同时保证nodejs的运行,还需要npm安装
    npm install @types/express --save
    npm install express --save
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值