当 Mithril.js 中的给定条件为真时,如何创建一个函数来调用自身

How does one create a function to call itself when a given condition is true in Mithril.js

这是我的秘银代码:

m('input', {
    id: 'someBox',
    placeholder: 'Type something',
    oninput: () => {
        query = document.getElementById('someBox).value;
        //do something

        for(var a=0; a<500; ++a) {
            if(query != document.getElementById('someBox'))
                //call this function

            //do a lot of something
        }
    }
})

只要有人输入文本,就应该加载一组或结果。当输入改变时,应该加载的结果不会改变,除非之前的结果加载完成。所以为了防止这种情况发生,我决定在 for() 循环中设置一个条件。目前我正在使用 break; 语句,但由于某些原因它有时不会加载结果。

这个函数有什么命名方法吗?

Note: I cannot declare a function globally due to certain restrictions.

如果这对您使用附加到 oninput 属性 的常规函数​​(而不是箭头符号)并不重要,您可以将该函数称为 this.oninput,就像这样:

m('input', {
    ...
    oninput: function(){
                ...
                if(query != document.getElementById('someBox'))
                //call this function
                this.oninput()
                ...
        }
    }
})