0

有没有办法在生成 dojo 方法之前运行我自己的函数?

具体来说,我需要在生成 query() 函数之前刷新 dojo.store.Memory 中的数据。我的想法是放一个回调(将在 query() 之前产生),从服务器获取新数据,然后将数据设置为 Memory 实例。然后打电话

this.inherited(arguments)

我试过用声明覆盖查询方法,但我仍然收到一些不相关的错误。4小时,但没有运气...

还有其他方法吗?

谢谢

4

1 回答 1

0

是的,您可以在任何方法之前、之后或周围触发回调。只需使用道场/方面

像这样的东西应该工作:

require(["dojo/store/Memory", "dojo/aspect"], function(Memory, aspect){
    aspect.before(Memory, "query", function(){
        // do something
    });
});

但是,对于您的特定用例,如果我理解正确,您想要的是将商店链接到服务器端控制器。在这种情况下,您应该使用dojo/store/JsonRest而不是 dojo/store/Memory。无需在查询之前触发任何方法...

于 2013-07-09T16:55:38.900 回答