将操作分配给变量

  • 本文关键字:变量 分配 操作 krl
  • 更新时间 :
  • 英文 :


在回答Aaron最近的问题时,我想这样做:

rule first_rule {
    select when pageview "exampley.com/?name=(.*)" setting (username)
    pre {
        isjoe = username eq "joe";
        myaction = defaction() {
            thisaction = isjoe => notify("Hello, World", "Hi there, Joe!") | noop();
            thisaction();
        };
    }
    {
        notify("Will it work?", "Methinks you are #{username}");
        myaction();
    }
}

然而,反抗似乎从来没有起作用。它不喜欢我把一个动作赋值给一个变量然后返回那个变量

我做错了什么?

你真的很接近了。

在背叛结束前你不能调用动作。您需要创建一个分区,将执行延迟到合适的时间。

改变:

thisaction = isjoe => notify("Hello, World", "Hi there, Joe!") | noop();

thisaction = isjoe => defaction(){notify("Hello, World", "Hi there, Joe!");} | noop;

注意添加的歧义,我从noop中删除了双亲。

这个概念类似于javascript闭包

相关内容

  • 没有找到相关文章