Enhancement Suggestion for obj-parse setterFn
theunionInnovation opened this issue · 1 comments
theunionInnovation commented
Hi Ariel, first off thank you for obj-parse and deepkeys. Both are wonderful utilities that I am using in my project(s). I wanted to send you this change to setterFn, as it might be of benefit to others who would like to be able to handle key values which are functions:
var setterFn = function(scope, path, value) {
var s = scope;
for(var i = 0; i < path.length - 1; i++) { //check the path
s = s[path[i]]; // s is the current path segment
if(angular.isUndefined(s)) { //make sure the path segment is good/defined
return undefined;
}
}
//ok, we have a good path, if it is a vanilla value return that, or, if a function call it
//probably we could be more sophisticated and do something like value.call(scope,path,value)
//just use value() for now
s[path[i]] = (angular.isFunction(value) ? value() : value);
return scope; //return the updated scope
};
a8m commented
Hi @iwakari , I'm glad you like them.
LGFM, feel free to create a PR.