当你开始使用 JavaScript 做开发时,你可能学习到的第一件事情就是如何使用 console.log 将内容打印到控制台。...如果你检查一下 console section of the Node.js documentation 你会发现 console.log 使用 stdout 打印而 console.error 则使用...我们来看一个例子,它会将 Hello there 重定向输出到 hello.log ,Bye bye 重定向输出到 error.log。...初始化项目: $ npm init -y $ npm install express 让我们设置一个带有中间件的服务器,只需要 console.log 为你的请求提供打印: const express...这是通过一个叫 debug 的包来完成的。
;到这一步就可以简单运行一下这个命令npm linklqnpm link 命令可以将一个任意位置的 npm 包链接到全局执行环境,从而在任意位置使用命令行都可以直接运行该 npm 包。...的美工我们看到taro init 命令里面会有一些颜色标识,就是因为引入了chalk这个包,同样和 commander 一样npm install --save chalkconsole.log(chalk.green...= require('log-symbols')console.log(symbols.success, chalk.green('SUCCESS'))console.log(symbols.error...;到这一步就可以简单运行一下这个命令npm linklqnpm link 命令可以将一个任意位置的 npm 包链接到全局执行环境,从而在任意位置使用命令行都可以直接运行该 npm 包。...的美工我们看到taro init 命令里面会有一些颜色标识,就是因为引入了chalk这个包,同样和 commander 一样npm install --save chalkconsole.log(chalk.green
1.2 为什么需要脚手架减少重复性的工作,从零创建一个项目和文件。根据交互动态生成项目结构和配置文件等。多人协作更为方便,不需要把文件传来传去。1.3 怎样来搭建呢?...;到这一步就可以简单运行一下这个命令npm linklqnpm link 命令可以将一个任意位置的 npm 包链接到全局执行环境,从而在任意位置使用命令行都可以直接运行该 npm 包。...的美工我们看到taro init 命令里面会有一些颜色标识,就是因为引入了chalk这个包,同样和 commander 一样npm install --save chalkconsole.log(chalk.green...'Error' : 'Success') }) }) })program.parse(process.argv)2.2.6 ora进度显示npm install --save...= require('log-symbols')console.log(symbols.success, chalk.green('SUCCESS'))console.log(symbols.error
1.2 为什么需要脚手架减少重复性的工作,从零创建一个项目和文件。根据交互动态生成项目结构和配置文件等。多人协作更为方便,不需要把文件传来传去。1.3 怎样来搭建呢?...;到这一步就可以简单运行一下这个命令npm linklqnpm link 命令可以将一个任意位置的 npm 包链接到全局执行环境,从而在任意位置使用命令行都可以直接运行该 npm 包。...(name) })program.parse(process.argv)可以通过 lq -v 来查看版本号通过 lq init name 的操作,action里面会打印出name2.2.3 对console...的美工我们看到taro init 命令里面会有一些颜色标识,就是因为引入了chalk这个包,同样和 commander 一样npm install --save chalkconsole.log(chalk.green..., chalk.green('SUCCESS'))console.log(symbols.error, chalk.red('FAIL'))2.2.7 完整文件如下#!
本文我们将会写一个 Babel plugin 的 npm 包,用于编译时将代码进行改造。...$ cd babel-plugin-function-try-actch 生成npm包的开发工程: $ yo babel-plugin ?...至此,npm 包环境搭建完毕,代码地址。...,是否正常 console.log(ast); 终端执行 node src/index.js 后将会打印如下结果: ?...最后 有关 npm 包的本地调试见下篇: 有关 npm 包的本地开发和调试:https://juejin.im/post/6888493557716353032/ 更多 AST 相关请关注后面分享,谢谢
一个关于前端日志打印的库。 npm地址 本文(详细)介绍了一个规范的npm包应该如何发布 如何用webpack打包公共类库,兼容不同环境,不同场景。...于是便想把console.log这个方法进行封装下,让调试起来更加方便,所以便准备发布一个npm包以便于以后也能使用。 所以,顺便为大家来详细介绍一个npm包该如何操作发布。.../dist/sn-log') } 这样就好啦,我们的一个规范的npm包就完成了,可以在不同环境,不同方式引入,还区分了两种环境。...[ //关键词,在npm网站输入这些关键词就可以搜索到你的包 "console", "snine", "log" ], "author": "Snine", //这个包的作者...' 只需两部轻松引入到项目之中,因为console本身就是全局对象,所以我们直接就把导出的log挂载到了window上面,我们之间来看看怎么使用吧,其实就是让log可以打印彩色的字体,加标签,让我们更快的看到我们打印的日志
在写本文时,使用 NPM 安装的 Redis 依赖包已经到了 4.1.0 版本了。我以前用过 2.8 ,这两个版本在用法上也是有差别的。可能一些老项目还在用老版本的依赖包。...npm init -y 复制代码 安装 Redis 依赖 在写本文时,使用以下命令安装的最新版 Redis 是 4.1.0 npm install redis 复制代码 如果你想用旧版语法,可以安装指定版本...', err => { console.error(err) // 打印监听到的错误信息 }) 复制代码 v4.1 语法 const redis = require('redis') // 引入 redis...,控制台会打印一条信息。...() // 监听错误信息 redisClient.on('err', err => { console.log('redis client error: ', err) }) // 创建连接,是个
如果你查阅 Node.js 文档的 console部分,会看到 console.log 是输出到 stdout 而 console .error 用的是 stderr。...例如,下面这个命令会将 “Hello there” 传给一个名为 hello.log 的文件并把 “Bye bye” 传到一个名为 error.log 的文件中。...1node index.js > hello.log 2> error.log ? 错误输出被重定向到不同的文件 应该在什么时候记录日志?...同时我们可以用 express-pino-logger 包来记录请求。...在控制台输出被上色的 "true" 之后运行相同的内容,但是将输出重定向到一个文件,然后检查内容: 1node cli.js > output.log 2cat output.log 你会看到这次它打印了
console.log(buf2) //打印出来的是个buffer var str = buf1+buf2; //打印出了一个字符串 //两个buffer拼接打印出来的却是一个字符串 // 这里两个...buffer拼接得到的不是一个buffer而是一个字符串, // 为什么会这样呢,原来buffer通过“+”相连会被隐式转换为字符串, // 并且是utf8编码格式的 console.log(str,213233123321...这里就需要用到一个npm包iconv-lite。这个包主要提供了两个方法decode和encode。decode方法解码,将buffer按照其编码格式解码输出字符串。...'); console.log(gbkstr) }) 原理已经介绍的差不多了,nodejs中做爬虫还有很多包,这里就不一一介绍了,只要能得到相应的buffer,并且知道目标网站的编码格式,将buffer...有兴趣的同学可以直接复制黏贴代码测试一下,别忘了用npm安装相应的包。
包名、版本号、cli 命令名称、 ├── publish.sh # npm publish(npm包) 发布脚本 └── README.md # 使用文档 复制代码 前后端技术栈、相关依赖 前端/客户端.../indexAuth.html,登录成功之后才能部署 fe-login.png postman-login.png 3.封装成一个npm包cli工具 为什么封装成 npm 包,使用命令行工具开启服务...、一个方法 // index.js module.exports = { name: '写一个npm包', doSomething() { console.log('这个npm暴露一个方法...npm-official.png 使用该 npm 包,创建 testNpm/index.js const packageInfo = require('zuoxiaobai-test') console.log...zuoxiaobai-test --save; 再 node index.js,执行情况如下图,调用 npm 包正常 test-npm.png 这样我们就知道怎么写一个 npm 包,并上传到 npm
node 中默认自带了 npm,npm 是一个包管理器,上面说到包就是一个个模块 (js 文件) 组成的一个具有特定功能的一堆 js 文件,通过 npm 我们可以引入这些包 (如果不理解,把包理解成一个个插件也没有错...你在执行 npm install xxx 的时候,实际上 npm 也只是帮你把 xxx 这个包下载下来了而已,仅此而已 当你通过 npm 安装了十来个或者更多的包的时候你可能自己早就不知道自己安装了哪些包了...,因为很多包依赖了其它的包 (一个包用到另一个包提供的功能是非常正常的行为,就像我们在用别人包里的功能一样), 所以 npm 提供了 package.json 这个文件来管理包 package.json...表示所有的包你都会通过这个文件引入 当你在 dependencies 和 devDependencies 定义好依赖,然后在命令行中输入 npm install,npm 就会帮你自动安装好这些包;反过来你在命令行中输入...其中 req 中包含了 url 这个属性,可以在回调函数中把它打印出来 console.log(req.url), 加入你在浏览器中输入的是:http://localhost:8000/aaa/bbb?
html-webpack-plugin": "^4.0.3", "jquery": "^3.4.1", "webpack": "^4.42.1", "webpack-cli": "^3.3.11"} 在入口文件引用和打印...jQuery: import $ from 'jquery'console.log($) 打包之后,可以使用jQuery。...jQuery: import $ from 'jquery'console.log($) 打包之后,可以使用jQuery。...我把node_modules删除,执行npm install,这几个包又都下载下来了。 最后得出 的结论是,--save-dev和--save在平时开发的时候,对于打包部署上线是没有任何影响的。.../src/index.js ERROR in .
关键在第一行make打印的日志,由于这不是npm打印的信息,没有ERR标识,所以容易被忽略。 pip报错 安装命令 比如使用pip安装依赖时。...failed with exit status 1 相对npm,pip安装时打印的日志较少,相对容易发现是gcc的问题。...没有那个文件或目录 make: g++: No such file or directory unable to execute gcc: No such file or directory 这类报错信息表明,在安装包的过程中...yum install gcc-c++ 疑问 为什么使用yum时没有碰到这种情况? yum大多不是采用编译的方法安装,打包编译后的文件。 yum所需依赖可自行解决。...总结 注意外部调用的错误日志,它们可能没有Error或高亮标识。 关键报错信息可能在出现Error标识之前的日志信中。
探索SQLite3的安装流程 npm install 为什么我们安装sqlite3的时候,会调用node-pre-gyp命令呢?...这就不得不提到npm的安装流程是。当我们进行npm install xxx的时候,npm首先下载xxx的包。...(err) { if (err) { log.error(command.name + ' error'); log.error('stack', err.stack)...; errorMessage(); log.error('not ok'); console.log(err.message); return process.exit...function do_build(gyp,argv,callback) {...} // 打印回退出现的异常 function print_fallback_error(err,opts,package_json
把 @vue/cli 的包通过 npm 安装到 node/lib/node_modules 这个目录下。...bin": { "test-cli": "bin/index.js" }, "main": "index.js", "scripts": { "test": "echo \"Error...test-cli 目录中 先全局移除之前通过 npm 安装的包,然后执行 npm link npm remove test-cli -g npm link 就会安装本地的脚手架了 随便修改本地代码后,然后再通过命令.../usr/bin/env node const lib = require("test-cli-0174-lib") console.log(lib); console.log('~ 本地脚手架开发...; 运行 test-cli 命令 可以把函数正常的打印出来了。
第一章 本周导学 1-1 本周整体内容介绍和学习方法 云构建原理、架构和实现 WebSocket入门到实战 Redis入门实战 第二章 云架构模块架构设计 2-1 详细分析为什么需要设计云构建系统...Object.is(buildCmdArray[0],'cnpm')){ throw new Error('Build命令非法,必须使用npm或cnpm!')...clearTimeout(this.timer) socket.disconnect() socket.close() } this.doTtimeout(()=>{ log.error...('disconnect','云构建任务断开') disconnect(); }) socket.on('error',(err)=>{ log.error('error','云构建错误',err...const parsedMsg = parseMsg(msg) if(FAILED_CODE.indexOf(parsedMsg.action)>-1){ log.error
'text/plain'}); //发送响应数据 “Hello World” response.end('Hello World\n'); }).listen(8888); //终端打印如下信息...:8888/ npm使用介绍 查看npm版本 npm -v 升级版本 npm install npm -g 安装包 npm install # 本地安装 npm... # 查看某个模块的版本号 npm ls # 查看当前目录下的包信息 卸载模块 npm uninstall...Eval Print Loop:交互式解释器),Node自带交互式解释器,可以执行读取,执行,打印,循环等任务 在Node的REPL中可以执行: 简单的表达式运算 $ node > 1+4 5 > 5...var fs = require("fs"); fs.readFile('input.txt', function (err, data) { if (err) return console.error
ID=12345') .then(function (response) { console.log(response); }) .catch(function (error...) { console.log(error); }); // Optionally the request above could also be done as axios.get...(response); }) .catch(function (error) { console.log(error); }); // Want to use...ID=12345'); console.log(response); } catch (error) { console.error(error); }...(1)安装express、axios $ npm install express --save $ npm install axios --save ?
这个还是需要一些前置知识的,我们一点点来看: 首先, jest、beforeAll、test、expect 这些 api 我们都没有从 jest 包导入,为什么就是全局可用的呢?...: 0 }); console.error(error); console.log(`${name} error`); } }...: 0 }); console.error(error); console.log(`${name} error`); } }...接下来就把这个覆盖率数据打印出来就好了。 这里需要用到 istanbul-lib-report 和 istanbul-lib-coverage 这俩包: 代码直接用文档中的实例代码就行。...比如覆盖率检测,这个直接用 istanbul 就行,它是通过函数插桩拿到覆盖率数据,放在一个 __corverage__ 的全局变量上,然后用别的包把它打印出来就行。
领取专属 10元无门槛券
手把手带您无忧上云