原生路由 -- 流的操作

为什么要是用前段路由?

后端路由:去访问一个页面的时候,要从后端向前段发送一个html的文件格式,然后通过浏览器去渲染这个html文件。
缺点:每次都会请求浏览器的资源 耗时间

前端路由:通过两种方式,
当页面路由改变时,去加载不同的页面(用户视角),当页面路由改变时,调用不同的js去重新渲染页面(对浏览器)。这就是单页面原理

hash

每次hash改变时,获取当前的hash值,对hashchange进行监听,页面刷新时,判断当前hash值,进行匹配。

var http = require( 'http' );
var fs = require( ' fs ' );

http.createServer(function(req,res){
          switch(res.url){
               case '/home':
                 res.write('home');
                 res.end();
                 break;
               case '/name':
                 fs.readFile( ' ./static/name.html ',function(error,data){
                        if( error ) throw error
                        res.write(data);
                        res.end();
                 })
                 break;
               case '/logo':
                 fs.readFile( ' ./static/name.html ','binary',function(error,data){
                        if( error ) throw error
                        res.write(data,'binary');
                        res.end();
                 })
                 break;
                 default;
                 break;
          }
}).listen(8000,localhost,function(){
      console.log( '服务器运行在: http://localhost:8000' );
})

history:

https://www.jianshu.com/p/b66f56c65049

减少内存消耗,增加效率;

1.创建一个压缩包

var fs = require( ' fs ' );
var zlib = require('zlib');//创建压缩包模块

var readStrem = fs.createStrem(' 1.txt ');//创建可读流
var out = fs.createWriteStrem(' 1.txt.gz ')//创建一个新的压缩包

var gzip = zlib.createGzip()//空压缩包
readStrem
.pipe(gzip)
.pipe(out);
原文地址:https://www.cnblogs.com/ruange/p/10908265.html