Angularjs中绑定变量的字符串
String with variables binding in Angularjs
我有一个长字符串文本,在要替换的值前面有@符号。注意:长文本是生成的,它在文本文件中,在我读取文件后,我将它放在如下变量中:
$scope.text = "example @by goes @you";
我有"by"answers"you"变量,我该如何简单地应用它,以便视图中的文本获得正确的值?我该怎么做?
我可以创建自定义过滤器,搜索@by和@you,并替换值或类似的技术,但也许有一种简单的方法,我不知道angular在这种情况下使用这种方法。感谢
为什么一次又一次地在$digest中进行,而您可以轻松地转换来自te服务器的数据,而只需修改一次?
我创造了一个Plunker,他就是这么做的。
angular.module('myApp', []);
angular.module('myApp').service('DataService', ['$http', '$q', function($http, $q) {
function getData() {
return $q(function(resolve, reject) {
$http.get('./response.json').then(function(response) {
resolve(response.data.value);
});
});
}
this.getData = getData;
}]);
angular.module('myApp').controller('MyController', ['DataService', function(DataService) {
var mv = this;
mv.data = 'retrieving data';
var filtered = false;
var filterValues= {
'@first_name': 'Hans',
'@last_name': 'Pock',
'@age': '79'
};
DataService.getData().then(function(response) {
mv.data = filter(response, filterValues);
});
function filter(text, values) {
var result = text;
angular.forEach(values, function(value, key){
var regexp = new RegExp(key, 'g');
result = result.replace(regexp, value);
});
return result;
}
}]);
如果我理解正确的话,你想要这个。我创建了一个plnkr供你查看。
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) { $scope.name = 'World';
$scope.text = "example @by goes @you"; });
app.filter('byfilter',function(){ return function(input,by,you){
return input.replace('@by',by).replace('@you',you);
} })
{{text|byfilter:'furkan':'ahmet'}}
furkan的例子是ahmet
http://plnkr.co/edit/GDXhSVxyDn8zeNK9HR3u?p=preview
这是一个简单的javascript。我不明白这和Angular有什么关系。
$scope.name = 'John';
$scope.age = 25;
$scope.text = 'My name is ' + $scope.name + ' and I''m ' + $scope.age + ' years old';
相关文章:
- 从带参数的字符串变量调用函数中的函数
- jquery字符串变量上的每个函数
- 我想将查询字符串变量添加到JSON名称/值对中
- 如何从字符串变量访问对象属性
- 以数组形式访问字符串变量的Javascript
- javascript时间戳插入字符串变量
- 在innerHTML中的getElementById中获取一个带引号的字符串变量
- 如何在Jquery html elemet属性中附加字符串变量
- 如何通过jsp表达式标记将java字符串变量传递给javascript函数
- 传递带有符号“”的字符串变量'"到函数
- 在 javascript 中字符串变量的 “'” 之前添加 ' '
- AngularJS字符串变量到使用sanitize的HTML元素
- 如何使用 JavaScript 比较字符串变量
- 使用 JSON.parse 将字符串(变量)转换为对象,错误意外标记
- 如何将字符串变量从PHP传递到Javascript
- 从包含另一个函数的字符串变量中返回一个函数
- 如何使用参数调用java脚本函数,其中参数来自字符串变量
- 如果通过字符串变量发送,HTML内部的子窗口将显示为文本
- 如何在ReactNative项目中将本地文本文件加载到字符串变量中
- 如何在javascript中用字符串变量替换一段文本