// 1. 通過事件發布訂閱來實現
// 這是 node 核心模組中的乙個類,通過它可以建立事件發射器的例項,裡面有兩個核心方法,乙個叫 on emit,on 表示註冊監聽,emit 表示發射事件
/* let eventemitter = require('events')
let fs = require('fs')
let eve = new eventemitter()
// 這個 html 物件是存放最終資料
let html = {}
eve.on('ready',function(key,val)
})fs.readfile('./template.txt','utf8',function(err,template) )
fs.readfile('./data.txt','utf8',function(err,data) ) */
// 通過乙個哨兵函式來處理
let fs =
require
('fs'
)let html =
// function done(key,val)
// }
function
reader
(length,cb)
return
function
(key,val)}}
let done =
reader(2
,function
(html)
)fs.
readfile
('./template.txt'
,'utf8'
,function
(err,template)
)fs.
readfile
('./data.txt'
,'utf8'
,function
(err,data)
)
redis哨兵發布訂閱
訂閱頻道 首先進入客戶端 以下所有操作都是在進入客戶端的前提下 redis cli subscribe test test為頻道號 上圖第二個引數表示訂閱的頻道名稱 第三個引數表示該客戶端訂閱的頻道總數 發布頻道後,訂閱頻道客戶端收到如下內容 訂閱模式 psubscribe test 匹配 test...
JavaScript事件發布 訂閱
1 發布 訂閱模式也是諸多設計模式當中的一種 2 這種方式可以在es5下相當優雅地處理非同步操作 3 什麼是發布 訂閱呢?我們舉個栗子 假設fn1,fn2,fn3都可以視作乙個事件的發布者,執行它,就會發布乙個事件。這個時候,我們可以通過乙個事件的訂閱者去批量訂閱並處理這些事件,包括它們的先後順序。...
訂閱發布模式 事件
實現訂閱發布模式的基本思路 訂閱者把自己想訂閱的事件註冊到排程中心,所以第一步應該先實現訂閱者到排程中心的方法。訂閱方法 排程中心統一排程訂閱者註冊到排程中心的處理 發布方法 訂閱者取消訂閱事件 取消訂閱方法 直接附上 var pubsub one function evt,fn,ctx off f...