目录
麻烦的文件操作路径
路径分类
和大多数路径规则一样,在 Node 中的路径规则同样遵守以下方式:
- 绝对路径
- 以
/
开头的路径,例如/a/b/c
- 在 Linux 中就是操作系统的根路径
- 在 Windows 中是当前 JavaScript 脚本所属磁盘根路径
- 以
c:/
开头的盘符路径,例如c:/a/b/c
- 以
- 相对路径
- 以
./
开头的相对路径,例如./a/b/c
- 在这里
./
可以省略,a/b/c
等价于./a/b/c
- 注意,
.
不能省略,否则/a/b/c
就是一个绝对路径
- 在这里
- 以
../
开头的相对路径,例如../a/b/c
- 以
相对路径操作的问题
相对路径到底相对于谁?
如何解决某些时候相对路径带来的问题?
__dirname
和 __filename
两兄弟
__dirname
用来动态的获取当前脚本文件所属目录的绝对路径__filename
用来动态的获取当前脚本文件本身的绝对路径
##把相对路径转换为动态的绝对路径
使用 path.join()
方法解决拼接的问题
路径使用整理
总结
-
相对路径永远是相对于执行 node 命令所处的路径
-
绝对路径永远是绝对路径,
__dirname
永远不会受影响
注意:模块标识路径还是相对于文件模块本身,还这里的文件操作中的相对路径规则没有关系。
nodemon
在开发过程中,每次修改完代码手动重启服务器很麻烦。这里我们可以使用一个第三方命令行工具:nodemon 来帮我们解决这个问题。
nodemon
是一个基于Node.js 开发的一个第三方命令行工具,使用它的第一步就是先安装:
npm install --global nodemon
基本使用:
nodemon app.js
只要是通过 nodemon app.js
启动的服务,则它会监视你的文件变化, 当文件发生变化的时候,自动帮你重启服务器。
注意:该工具仅用于开发测试,不要在生产服务器中使用该命令。
Mocha
参考链接
JavaScript 代码风格
代码风格
JavaScript Standard Style
Airbnb JavaScript Style Guide
ESLint
Introduction
Getting Started
参考链接
Prettier
在 Sublime 中使用 Prettier
爬虫
网络爬虫
- 百度百科 - 网络爬虫
- 维基百科 - 网络爬虫
- 知乎 - 利用爬虫技术能做到哪些很酷很有趣很有用的事情?
- 我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言
- 慢慢买
- 你做过哪些有趣的基于网络爬虫的应用?
- 大数据最核心的价值是什么?
- 数据的价值和意义
- Python实战:网络爬虫都能干什么?
Socket.IO
WebSocket
Socket.io
聊天室
- 登录、注册、退出
- 让用户不再匿名
- 第三方登录 Github
- 点对点聊天
- 房间群聊
Electron
Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。 Electron通过将Chromium和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。
Electron于2013年作为构建Github上可编程的文本编辑器Atom的框架而被开发出来。这两个项目在2014春季开源。
目前它已成为开源开发者、初创企业和老牌公司常用的开发工具。 看看谁在使用Electron 。
介绍
Electron(最初名为Atom Shell)是 GitHub 开发的一个框架。 它允许使用 Node.js(作为后端)和 Chromium(作为前端)完成桌面应用程序的开发。 Electron 现已被多个开源Web应用程序用于前端与后端的开发,著名项目包括GitHub的 Atom 和微软的 Visual Studio Code。
- 简单来讲 electron 就是一个套了浏览器的客户端应用程序
一个基础的Electron包含三个文件:package.json(元数据),main.js(代码)和index.html(图形用户界面)。 框架由Electron可执行文件(Windows中为electron.exe、macOS中为electron.app、Linux中为electron)提供。 开发者可以自行添加标志、自定义图标、重命名或编辑Electron可执行文件。
发展历史
- 2013年4月11日,Electron以Atom Shell为名起步。
- 2014年5月6日,Atom以及Atom Shell以MIT许可证开源。
- 2015年4月17日,Atom Shell改名为Electron。
- 2016年5月11日,1.0版本发布。
- 2016年5月20日,允许向Mac应用商店提交软件包。
- 2016年8月2日,支持Windows商店。