json-rules-engine facts 简单说明

facts 实际上就是在rule 引擎执行中需要的数据,facts 数据可以是常量(硬编码的),也可以是动态设置的

参考使用

// constant value facts
let fact = new Fact('apiKey', '4feca34f9d67e99b8af2')

// dynamic facts
let fact = new Fact('account-type', (params, almanac) => {
  // ...
  //  可以通过配置的参数,或者almanac context 对象,获取一些依赖的数据,之后进行db 数据访问
})

// facts with options:
engine.addFact('account-type', (params, almanac) => {
  // ...
}, { cache: false, priority: 500 })

说明

facts 相对简单,核心就是数据的存储,官方有动态处理参数的示例可以看看

参考资料

https://github.com/CacheControl/json-rules-engine/blob/master/docs/facts.md

https://github.com/CacheControl/json-rules-engine/blob/master/examples/03-dynamic-facts.js

posted on 2024-11-29 08:00  荣锋亮  阅读(3)  评论(0编辑  收藏  举报

导航