pou*_*sma 16 javascript jquery frontend angularjs
我需要在angularjs中注册一个可用的方法.此方法有2个参数(资源ID,删除成功时的回调),它使用资源提供程序实际删除该项.
然后注册它,我需要angularjs注入我$rootScope和MyResourceProvider.我的第一个想法是在我的主页控制器中执行此操作:
var HomeCtrl = function ($rootScope, MyResourceProvider) {
$rootScope.confirmAndDeletePackage = function (sId, fCallback) {
// do some stuff
MyResourceProvider.delete({id: sId}, fCallback);
}
}
这开始实际上我的问题.这在常规导航(主页 - >列表 - >选择 - >删除)中工作正常,但如果用户直接访问删除按钮可用的页面而不通过主页,则此方法将不可用(因为HomeController尚未初始化)...
所以,我的问题是我在哪里可以移动这段代码,以确保它始终在应用程序引导程序中执行.
我试过myApp.config()但没有成功......
任何的想法?
Mar*_*cok 41
正如@ganaraj在评论中提到的,服务可能是更好的选择.
但是,要回答您的问题,您可以使用run()方法.
myApp.run(function($rootScope, MyResourceProvider) {
$rootScope.confirmAndDeletePackage = function (sId, fCallback) {
// do some stuff
MyResourceProvider.delete({id: sId}, fCallback);
}
})
Run Code Online (Sandbox Code Playgroud)
加载所有模块后调用run().
| 归档时间: |
|
| 查看次数: |
20904 次 |
| 最近记录: |