【发布时间】:2015-09-01 22:14:28
【问题描述】:
我的 restangular 设置中有奇怪的“非错误”。即使错误被记录到控制台,东西也能正常工作。
我使用组件驱动的方法和解耦的 restangular 服务工厂 (clientService)。将服务工厂注入控制器并绑定this.clients = clientService;
在 clientrecord 小部件的链接函数中,我得到一个特定的客户端并观察另一个指令对 client.keywords 所做的更改。
link: function (scope, element, attrs, ctrl) {
var cid = $stateParams.clientid;
scope.client = ctrl.clients.one(cid).get().$object;
scope.$watchCollection('client.keywords',
function (newval, oldval, scope) {
scope.client.put();
}
);
}
代码运行良好。关键字由另一个小部件编辑,检测到更改,发出请求,关键字最终进入数据库。但是chrome和firefox都报错:
"typeError: scope.client.put" is not a function"
目前这只是一种烦恼,但它会进一步演变成令人讨厌的行为吗?我可以修复它吗?我需要进行类型转换吗?
Service 本身基本上是单行的:
(function () {
'use strict';
angular
.module('client')
.factory('clientService', ClientService);
ClientService.$inject = ['Restangular','$stateParams'];
function ClientService(Restangular) {
return Restangular.service('routes/clients');
}
}());
【问题讨论】:
-
你能把剩下的代码贴出来吗?最起码的服务
-
@AnidMonsur 服务工厂添加在上面
标签: javascript angularjs angularjs-directive restangular