我试图在程序开始时注册一个回调方法,然后在网络应用程序的整个生命周期中的不同时间调用它。回调工作正常,直到我刷新浏览器,之后我使用的类变量被重置。这样做的正确方法是什么?现在我做了以下事情 -
class MyManager
@registerCallback : (callback) ->
@callback = callback
它的名字就像 -
MyManager.registerCallback myMethod
如有任何帮助,我们将不胜感激!
最佳答案
我知道这个问题很旧,但我认为这可以帮助某人:
// persist while window is open
sessionStorage.myMethod = (function (msg) { alert(msg) }).toString()
// persist forever (while user keeps browser data)
localStorage.myMethod = (function (msg) { alert(msg) }).toString()
然后以这种方式运行该函数:
// execute from sessionStorage
eval("(" + sessionStorage.myMethod + ")('Hello World!')");
// execute from localStorage
eval("(" + localStorage.myMethod + ")('Hello World!')");
关于javascript - 如何注册回调并通过网站刷新保留它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14202798/