2015-07-13 3 views
0

Я использую этот код, чтобы добавить свойство в фильтр при пометке флажка.Использовать фильтр с контроллером angularjs

<input ng-model="filter['model']['first']" value="first" type="checkbox" name="model"> 

Я пытался сделать это в контроллере, чтобы принять значение stateparams и предварительно выбрать соответствующий флажок

$scope.filter = {}; 
$scope.model=$stateParams.model; 
if($scope.model == 'first') 
{filter="['model']['first']"} 
else if if($scope.type == 'second')... 

Но это не работает, фильтр не работает, и я его не совпадают с любой элемент больше.

+0

не может установить значение только с одним '$ stateParam' для чего-то, что требует как ключа, так и значения. У '$ stateParams' также есть свойство, которое включает значение для' model'? – charlietfl

ответ

0

Это то, что вы хотели иметь?

$scope.filter = {}; 
$scope.model=$stateParams.model; 
if($scope.model == 'first') 
{ 
    $scope.filter="['model']['first']" 
} 
else if($scope.type == 'second'){ 
    ... 
} 

Если так что ваша проблема заключается в следующем:

$scope.filter = {}; 
$scope.model=$stateParams.model; 
if($scope.model == 'first') 
{ 
    $scope.filter['model'] = {}; 
    $scope.filter['model']['first'] = ???; 
} 
else if($scope.type == 'second'){ 
    ... 
} 

Я не уверен, что вы пытаетесь установить ['model']['first'] тоже.

+0

'$ scope.filter =" ['model'] ['first'] "' как строка не имеет смысла – charlietfl

+0

Я знаю, поэтому мое решение не включает его. –