全部,我可以在规则正文中运行多个缺陷吗?还是我只能运行一个?
问问题
79 次
3 回答
3
您可以根据pre
需要在规则块中定义任意数量的操作。您可以在规则的操作块中包含任意数量的操作(只需将操作块括在花括号中)。例如,
rule first_rule {
select when pageview ".*" setting ()
pre {
notify_one = defaction() { notify("notify_one", "First defaction"); };
notify_two = defaction() { notify("notify_two", "Second defaction"); };
}
{
notify_one();
notify_two();
}
}
所以我认为你的问题的答案是肯定的。
于 2011-04-07T06:08:06.143 回答
2
你的问题有点令人困惑,但我会试一试。
运行定义的defaction
动作就像运行系统定义的动作。
如果您想在规则中运行多个操作,则需要将它们包装在 {} 中,如下所示:
rule foo {
select when pageview ".*"
{
notify("cheese", "brie");
notify("apple", "golden delicious");
}
}
于 2011-04-07T06:09:55.740 回答
1
我似乎记得一个defaction有一个隐含的、可选的“pre”部分,然后是action(s)。正如 Sam 所说,要包含多个操作,您确实需要 {}。
act1 = defaction() {
{
notify("Defaction Demo", "<ul id='demo_id'></ul>");
append("#demo-id", "<li>cheese: brie</li>");
append("#demo-id", "<li>apple: golden delicious</li>");
}
};
这可以解决,defaction() { { ... } };
但如果你想在一个defaction中执行多个操作,则需要额外的花括号。
于 2011-04-07T16:18:30.057 回答