如何在ionic框架中的控制器中注入angular服务?
在Ionic框架中,如何在控制器中注入Angular服务?
如果你正在使用Ionic2,可以参考这个链接中的示例来了解如何在控制器中注入服务:https://stackoverflow.com/questions/34760422
注意服务中的@Injectable()
装饰器,控制器中@Component
装饰器的[providers]
参数,以及服务实例作为构造函数的参数的用法。
示例代码如下:
// 服务 @Injectable() export class MyService { // 服务逻辑 } // 控制器 @Component({ selector: 'my-page', templateUrl: 'my-page.html', providers: [MyService] // 注入服务 }) export class MyPage { constructor(private myService: MyService) { // 使用myService进行操作 } }
在Ionic框架中,如何在控制器中注入Angular服务?
在Ionic框架中,构建于Angular.js之上,因此在Ionic中进行此操作与在Angular中没有任何区别。
解决方法很简单,像下面这样:
var myapp = angular.module('myApp',['ionic']); myapp.service('MyService',['$http', function($http) { return { doSomeThing: function() { // 在这里使用$http或其他方式做一些操作 }, doSomeThingElse: function() { } } }]); myapp.controller('MyController',['MyService',function(MyService) { MyService.doSomeThing(); }]);
以上代码简单地展示了如何在Ionic框架中注入Angular服务到控制器中。