express+mongodb+vue实现增删改查-全栈之路

`vue``element``mongodb``express`

## 效果图
![](http://cdn.itbaby.me/images/2018/03/20/39feaeeeddb80f7bc4798a135eac07ea.gif)
## ![](http://cdn.itbaby.me/images/2018/03/20/f0603ef4ae6699160f5e4f101f2c1677.gif)

## ![](http://cdn.itbaby.me/images/2018/03/20/4ab1cad8ffc209c5148cb28cbb2e82e4.gif)
![](http:

测试用例驱动阅读Express源码

Expres是基于Node.js平台,快速、开放、极简的web开发框架。(Expres中文官网首页原话)。之所以引用这句话,是因为这句话简单明了的告知了大家,它到底是什么。基于Node的一个开发框架,目的是给web开发提供了方便。今天我们就用测试用例开发的模式,一步步追踪Express路由系统源码是怎么实现的。

### 整体代码感知

本次实践项目,完整目录结构如下(以下会直接说某个文件的内容):

    Express
      |--lib
      |   |-express.js(主文件)
      |   |-application.js(相当于中转站直接访问路由信息)
 

Nodejs 实践 -- Stream 流

## 什么时候使用流

当处理大文件读取、压缩、归档、媒体文件和巨大的日志文件时,数据都会被读入内存,内存很快就会被使用完,这将会给程序带来很大的问题。

如果在进行这些操作的时候,配合一个合适的缓冲区,一次读取固定的长度,就会使用更少的内存,这就是流式的API。

### Stream 可用的API 类

- 
Readable - 可读的流 (例如      [`fs.createReadStream()`](https://link.juejin.im?target=http%3A%2F%2Fnodejs.cn%2Fapi%2Ffs.html%23fs_fs_createreadstre

Express的使用及原理

`Express` 和 `Koa` 是目前最主流的基于 `node` 的web开发框架,他们的开发者是同一班人马。貌似现在 `Koa` 更加流行,原因在于我们可以基于 `Koa` 进行二次开发,这篇文章主要探讨一下 `Express` 。 

## Express的常用功能

- 路由控制
- 中间件
- 静态文件服务
- 模板解析

## 使用方法

在这里介绍一些常用的api:

先引用express,并且执行

    let express = require('express');
    let app = express();
    app.listen(8080, () =>

express框架的简单实现

![](http://cdn.itbaby.me/images/2018/03/20/9f4610a1ad90bec37996af10e4e1873b.jpg)
上面这张图画了express的路由处理方式,这也是和koa最大的区别,栈上有一个个的路径以及处理方法,每个路径对应一个层,每个层里又会有处理方法或者路由,每个层里都有一个next用来传递,这相当于一个二维数组。

### 路由的实现

在使用express的时候,我们可以通过如下的方式来注册路由:

    app.get("/",function(req,res){
        res.send("hello world"); 

express源码学习

    I don't read books, never went to school, I just read other people's code and always wonder how things work. ——TJ Holowaychuk
    

#### 简介

这篇文章的主要的目的是通过研究express核心源码,让我们对express深入理解,不仅会用express,还要理解其背后的思想,提高开发效率。研究express源码,学习大神的代码结构。本文只介绍核心代码和核心流程,类型判断和express的使用等不包括在内。

#### express

express

Chrome 66 新增异步剪贴板 API

在过去的几年里我们只能使用 [`document.execCommand`](https://developers.google.com/web/updates/2015/04/cut-and-copy-commands) 来操作剪贴板。不过,这种操作剪贴板的操作是同步的,并且只能读取和写入 DOM。

现在 Chrome 66 已经支持了新的 [Async Clipboard API](https://www.w3.org/TR/clipboard-apis/#async-clipboard-api),作为 `execCommand` 替代品。

这个新的 Async Clipboard A

Angular之五 服务器通讯

Angular可以与任何支持http与websocket服务器进行通讯。

首先,我们使用node.js用typescript语言创建一个web服务器。

## 一、创建web服务器

## 步骤1

创建一个空的项目,取名为service,名字可以按照情况而取。

使用命令行,npm init -y  作用:进行初始化,增加一个默认的package.json

使用命令行, npm i @types/node --save  作用:引入node.js

但是node.js不认typescript,需要把typescript编译成javascript,

首先,新建一个配置文件,取名为tsco

web3公测版本教程(二) (基础异步语法,交易,签名交易,ganache-cli)

## 一.开发环境安装及其搭建

1.安装node 最好v8的可以使用ES6语法
2.安装ganache
**ganache介绍**:虽说真实发布必须要使用前文说到的三种方法geth,parity,或其它服务商,但是测试开发环境下,有一款本地基于内存的钱包,不需要等待确认交易,根据操作实时出块,及其方便,它就是ganache-cli,纳尼?你没听过它,好吧它的前身就是大名鼎鼎的testrpc,简直不能太好用呀。

> 安装命令: npm i ganache-cli -g 
> 执行命令: ganache-cli

**初始状态说明**:创建10个以太坊账户,公钥私钥上下对应,默认每个账户100

JS 实现缓存算法(FIFO/LRU)

### FIFO

最简单的一种缓存算法,设置缓存上限,当达到了缓存上限的时候,按照**先进先出**的策略进行淘汰,再增加进新的 k-v 。

使用了一个对象作为缓存,一个数组配合着记录添加进对象时的顺序,判断是否到达上限,若到达上限取数组中的第一个元素key,对应删除对象中的键值。

    /**
     * FIFO队列算法实现缓存
     * 需要一个对象和一个数组作为辅助
     * 数组记录进入顺序
     */
    class FifoCache{
        constructor(limit){
            this.limit = limit |

如何学好前端

学前端需要哪些知识

有没有推荐前端原生js书本

有没有推荐前端原生js书本,适合这几年的

使用nodejs做的 ngrok frp 内网穿透管理平台

###  本着练手为目的开发的项目,不喜勿喷谢谢!
项目地址 [https://www.cngrok.com](https://www.cngrok.com)
Github 地址 [https://github.com/ssstk/cngrok](https://github.com/ssstk/cngrok)
#### 注册本服务并非免费,只需支付一元 即可使用一个月 (这里防止恶意注册)
## 目前已经实现 ngrok frp 内网穿透管理
### 主要技术

项目主要实现 开源项目ngrok 二次开发, 增加维护隧道列表 验证隧道 简化配置 等等...

使用nodej

【JavaScript 基础知识】一篇关于 JavaScript 一些知识点的总结 —— 持续更新

## JavaScript 中基础数据类型
| 数据类型名称 |  数据类型说明 |
| ---  | --- |
| Undefined | 只有一个值,即 ``` undefined ```,声明变量的初始值。 |
| Null | 只有一个值,即 ``` null ```,表示空指针,``` undefined ``` 的值是派生 ``` null ``` 的值。 |
| String | 由零或多个 16 位 ``` Unicode ``` 字符组成 |
| Boolean | 只有两个值,即 ``` true ``` 和 ``` false ``` |
| Number

pm2 node 进程

![592CC505-682F-432f-815B-F407A58C4DB4.png](//static.cnodejs.org/FiBCiI_Gg_UdaDkyL_oGIUTBR5MS)  
有大神能解释一下这个现象吗?最近遇到的,不是很理解