我有一个Angular初学者问题:
我在json中有数据,因此我想制作一个特定的网页。 史密斯先生从我那里得到一个链接,他必须看到他的信息,而不需要在输入字段输入他的名字或者需要勾选一个复选框
使用inputfield或checkbox对我来说都很好,但我需要的是
value1 = 'Smith'
所以我在ng-repeat
中获得了value1
我可以使用复选框,但我不想要复选框
<input type="checkbox" ng-model="value1"
ng-true-value="Smith" ng-false-value=""> Mister Smith <br/>
<ng-repeat="name in names | filter:value1 " >
<b>{{name.firstname}}</b>
我可以用什么方式在我的html中给value1
一个静态值?
答案 0 :(得分:0)
使用{{value1}}
。
所以代码看起来像:
{{value1}} <br/>
<ng-repeat="name in names | filter:value1 " >
<b>{{name.firstname}}</b>
答案 1 :(得分:0)
一种可能的解决方案是使用ng-init,http://docs.angularjs.org/api/ng.directive:ngInit 我不确定你是否必须首先将过滤器分配给变量,但你可以尝试像
这样的东西<ng-init="value1 = Smith" ng-repeat="name in names | filter:value1 " >
但是,正如警告中明确指出的那样,最好在控制器中执行此操作。
更新:根据您的修改。
.controller('SomeController', ['$scope', '$http', function ($scope, $http) {
// Assuming you get your data using $http
$http.get('/some/resource').success(function (data) {
// Assuming data.name is "Mr Smith"
$scope.filter.filterOn = data.name;
});
}]);
然后,
<ng-repeat="name in names | filter:filter.filterOn " >