Javascript 从ng click功能调用服务

Javascript 从ng click功能调用服务,javascript,angularjs,Javascript,Angularjs,我有一个叫depotSvc的工厂服务。我将其添加到控制器的作用域中。当我直接从控制器访问它时,没有问题——它将“foo”记录到控制台。当我从ng click函数调用它时,它不会将“foo”记录到控制台。从ng click函数中调用服务有什么诀窍吗 html 从ng click函数中调用服务有什么诀窍吗 没有技巧,您可以访问暴露给作用域的所有内容(如果是controllerAssyntax,则可以访问控制器实例)。因此,如果您需要在HTML中以角度表达式提供服务,则需要将其分配给某个范围属性。例如

我有一个叫depotSvc的工厂服务。我将其添加到控制器的作用域中。当我直接从控制器访问它时,没有问题——它将“foo”记录到控制台。当我从ng click函数调用它时,它不会将“foo”记录到控制台。从ng click函数中调用服务有什么诀窍吗

html

从ng click函数中调用服务有什么诀窍吗

没有技巧,您可以访问暴露给作用域的所有内容(如果是
controllerAs
syntax,则可以访问控制器实例)。因此,如果您需要在HTML中以角度表达式提供服务,则需要将其分配给某个范围属性。例如:

$scope.depotSvc = depotSvc;
从ng click函数中调用服务有什么诀窍吗

没有技巧,您可以访问暴露给作用域的所有内容(如果是
controllerAs
syntax,则可以访问控制器实例)。因此,如果您需要在HTML中以角度表达式提供服务,则需要将其分配给某个范围属性。例如:

$scope.depotSvc = depotSvc;

问题在于我的服务。我有一个jsonp请求调用测试数据,周围有一个虚拟包装器——始终由angular_0({})包装。JSONp将失败,大概b/c它需要一个不同的包装器,即angular_1({})。。。我想。谢谢你的回复。我将其更改为get请求,并在本地托管数据进行测试——现在没有问题。

问题在于我的服务。我有一个jsonp请求调用测试数据,周围有一个虚拟包装器——始终由angular_0({})包装。JSONp将失败,大概b/c它需要一个不同的包装器,即angular_1({})。。。我想。谢谢你的回复。我将其更改为get请求,并在本地托管数据进行测试——现在没有问题。

毕竟我的服务似乎有问题。感谢您的帮助。请注意,从模板调用异步方法可能没有多大用处(因为您无法定义然后回调)。例如,在您的情况下,
ng click=“depotSvc.getdepotvehiclesflatary(depotCode,depotArea)
没有多大帮助。同步方法很好。这似乎是我的服务的一个问题。感谢您的帮助。请注意,从模板调用异步方法可能没有多大帮助(因为您无法定义然后回调)。例如,在您的情况下,
ng click=“depotSvc.getdepotvehiclesplatary(depotCode,depotArea)
没有多大帮助。同步方法很好。
$scope.depotSvc = depotSvc;