我的全局代码块中包含以下内容:
test = defaction(){
if(5>10) then {
notify("yes","yes");
}
}然后我还有以下规则:
rule tester {
select when pageview ".*"
test();
}我希望notify永远不会发生,因为5永远不会大于10。然而,它在每一个页面上运行。我确信我做错了,尽管感觉是对的。
发布于 2011-03-29 21:44:59
谓词(如if (5>10) then )不是动作块的一部分。因此,在defaction中包含谓词是没有意义的。你必须像这样写它:
global {
test = defaction(){
notify("yes","yes");
}
}
rule tester {
select when pageview ".*" setting ()
if (5>10) then {
test();
}
}比方说,if...then构造实现了与every构造相同的功能:它包装动作块。
https://stackoverflow.com/questions/5470816
复制相似问题