-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtext_3.js
33 lines (27 loc) · 1.06 KB
/
text_3.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
const seneca = require('seneca')()
seneca.add({role: 'math', cmd: 'sum'}, function (msg, respond) {
var sum = msg.left + msg.right
respond(null, {answer: sum})
})
// 下面两条消息都匹配 role: math, cmd: sum
seneca.act({role: 'math', cmd: 'sum', left: 1.5, right: 2.5}, (err , result )=>{
console.log(result)
})
seneca.act({role: 'math', cmd: 'sum', left: 1.5, right: 2.5, integer: true}, (err , result )=>{
console.log(result)
})
setTimeout(() => {
seneca.add({role: 'math', cmd: 'sum', integer: true}, function (msg, respond) {
var sum = Math.floor(msg.left) + Math.floor(msg.right)
respond(null, { answer: sum })
})
// 下面这条消息同样匹配 role: math, cmd: sum
seneca.act({role: 'math', cmd: 'sum', left: 1.5, right: 2.5}, (err , result )=>{
console.log(result)
})
// 但是,也匹配 role:math,cmd:sum,integer:true
// 但是因为更多属性被匹配到,所以,它的优先级更高
seneca.act({role: 'math', cmd: 'sum', left: 1.5, right: 2.5, integer: true}, (err , result )=>{
console.log(result)
})
}, 100)