你好(一种新手问题),
我有以下内容:
$scope.updateInline = function(fctr, item, fieldName){
var obj = {};
obj[fieldName] = item[fieldName];
obj['id'] = item.id;
[fctr]update( {id:item.id}, obj, function (data) {
if (!data.error) {
notify({ messageTemplate: $scope.notifyMsg.UpS, classes: 'alert-success', duration: 3000});
} else {
notify({ messageTemplate: $scope.notifyMsg.UpE, classes: 'alert-danger', duration: 3000});
}
});
};
在我的HTML中:
<input type="text" ng-model="item.clientId" ng-ng-change="updateInline('Invites_Fctr',item, 'clientId')" />
如何将Invites_fctr从html传递到.update函数的[fctr]
[fctr] update(....)无效。我的语法不好。
我希望这很清楚。 谢谢
答案 0 :(得分:0)
我不知道您为什么要这样做,但您可以尝试将工厂保存为范围属性:
var factories = {"Invites_Fctr": InvitesFactory, "List_Fctr": ListFactory}; //Assuming they are properly injected onto the controller.
$scope.updateInline = function (factoryName, item, fieldName) {
var obj = {};
obj[fieldName] = item[fieldName];
obj['id'] = item.id;
factories[factoryName].update({id: item.id}, obj, function (data) {
if (!data.error) {
notify({messageTemplate: $scope.notifyMsg.UpS, classes: 'alert-success', duration: 3000});
} else {
notify({messageTemplate: $scope.notifyMsg.UpE, classes: 'alert-danger', duration: 3000});
}
});
};