Angularjs 如何$watch将多个属性同时插入到一个表达式中?

Angularjs 如何$watch将多个属性同时插入到一个表达式中?,angularjs,service,controller,expression,string-interpolation,Angularjs,Service,Controller,Expression,String Interpolation,假设有两个输入字段-名称和文本。如何同时观察这两个字段并将其值插值到一个表达式中 谢谢 更新日期2014年9月7日: 我用一个工作版本的代码做了这件事:) 谢谢Mohammad Sepahvand 代码: 插入字符串模板示例 angular.module('myApp',['emailParser']).controller('MyController',['$scope','emailParser',函数($scope,emailParser){ //初始化 $scope.to=''; $s

假设有两个输入字段-名称和文本。如何同时观察这两个字段并将其值插值到一个表达式中

谢谢

更新日期2014年9月7日:
我用一个工作版本的代码做了这件事:)

谢谢Mohammad Sepahvand

代码:


插入字符串模板示例
angular.module('myApp',['emailParser']).controller('MyController',['$scope','emailParser',函数($scope,emailParser){
//初始化
$scope.to='';
$scope.emailBody='';
$scope.$watchCollection(“[to,emailBody]”,函数(newValues,oldValues){
//在这里做事
//newValues和oldValues分别包含新值和旧值
//观察到的集合数组的
如果(newValues[0]&&newValues[1]){//有名字和一些文本吗?
$scope.previewText=EmailParser.parse(newValues[1],{to:$scope.to});
}
});
}]);
angular.module('emailParser',[]).config(['$interpolateProvider',function($interpolateProvider){
$interpolateProvider.startSymbol(“'uuuu');
$InterpologeProvider.endSymbol(“uu”);
}]).factory('EmailParser',['$interpolate',function($interpolate){//create service
返回{
parse:function(文本、属性为interpolated){//handle解析
变量模板=$interpolate(文本);
返回模板(propertiesToBeInterpolated);
}
};
}]);
readme.md文件中的说明-请先阅读!
*姓名:


*文本:

*必填项

__预览文本__
您可以使用angular 1.3中添加的
$watchGroup
方法:

scope.$watchCollection('[prop1, prop2]', function(newValues, oldValues){

});
或者您可以使用从angular 1.1.4开始提供的
$watchCollection

$scope.$watchGroup(['prop1', 'prop2'], function(newValues, oldValues, scope) {
   var prop1 =newValues[0];
   var prop2 =newValues[1];
});
scope.$watchCollection('[prop1, prop2]', function(newValues, oldValues){

});