A Tabela inteligente não é atualizada quando o valor do filtro de pesquisa é alterado de javascript [duplicado]
Esta pergunta já tem uma resposta aqui:
Como integrar o Smart Table `st-search` com o ng-model? 1 respostaestou usandoMesa Inteligente Angular. Enquanto estou usando filtros de pesquisa usando a diretiva st-search, quando altero seu valor da tabela javascript não obtemos atualizações. aqui está o meu código
Aqui está o meu controlador
angular.module('myApp', ['smart-table'])
.controller('mainCtrl', ['$scope', '$timeout',
function ($scope, $timeout) {
var nameList = ['Pierre', 'Pol', 'Jacques', 'Robert', 'Elisa'];
var familyName = ['Dupont', 'Germain', 'Delcourt', 'bjip', 'Menez'];
$scope.isLoading = false;
$scope.rowCollection = [];
function createRandomItem() {
var
firstName = nameList[Math.floor(Math.random() * 4)],
lastName = familyName[Math.floor(Math.random() * 4)],
age = Math.floor(Math.random() * 100),
email = firstName + lastName + '@whatever.com',
balance = Math.random() * 3000;
return {
firstName: firstName,
lastName: lastName,
age: age,
email: email,
balance: balance
};
}
$scope.columns = ['firstName', 'lastName', 'age', 'email', 'balance'];
for (var i = 0; i < 10; i++) {
$scope.rowCollection.push(createRandomItem());
}
$scope.changeSearch = function () {
document.getElementById('firstName').value = '';
};
}
]);
Aqui está o html
<body ng-controller="mainCtrl">
<div class="table-container">
<table st-table="rowCollection" class="table table-striped">
<thead>
<tr>
<th ng-repeat="col in columns" st-sort="{{col}}">{{col}}</th>
</tr>
<tr>
<th>
<input st-search="firstName" id="firstName"
placeholder="search for firstname"
class="input-sm form-control"
type="search" />
</th>
<th colspan="4">
<input st-search placeholder="global search"
class="input-sm form-control"
type="search" />
</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="row in rowCollection">
<td ng-repeat="col in columns">{{row[col]}}</td>
</tr>
</tbody>
</table>
<button ng-click="changeSearch()">Change Search</button>
</div>
<div ng-show="isLoading" class="loading-indicator"></div>
<script src="angular.min.js"></script>
<script src="smart-table.min.js"></script>
<script src="app2.js"></script>
Peguei um botão e, no método de clique, altere o valor do filtro de pesquisa, o valor muda, mas a tabela não é filtrada. Preciso de ajuda? É possível alterar o valor dos filtros de pesquisa do código?