javascript - 如何注册回调并通过网站刷新保留它?

标签 javascript callback coffeescript

我试图在程序开始时注册一个回调方法,然后在网络应用程序的整个生命周期中的不同时间调用它。回调工作正常,直到我刷新浏览器,之后我使用的类变量被重置。这样做的正确方法是什么?现在我做了以下事情 -

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/

相关文章:

javascript - 从 React MaterialUI RadioButtonGroup 获取值和 id

javascript - 如何从 JavaScript 执行 Kotlin WebAssembly 函数?

javascript - 如何测试异步回调?

delphi - 带身份验证的 DataSnap 回调

javascript - 迭代用户选项并将它们分配给 CoffeeScript 中的对象实例

coffeescript - 使用 Meteor >0.6.0 和 CoffeeScript 的全局类

javascript - 单击按钮时调整 colspan

python - 当某些项目相互依赖时,如何运行异步进程列表?

javascript - 返回数据的回调函数 - 使其匿名,函数还是模块?

javascript - 如何使用 Meteor.startup 修复文件加载顺序问题?