Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Desafio com Typeahead (AngularJS)

Boa noite pessoal, tudo bem?

Gostaria de saber como eu faço para carregar um objeto 'cidade' que está contido dentro de um outro objeto 'contato'. A cidade é carregada dentro de um Typeahead (autocomplete). Estou mostrando apenas a descrição da cidade (e vou colocar a UF do estado também) para ficar amigável para o usuário. Até aqui tudo bem, padrão! Acontece que, quando vou salvar o contato (AJAX [POST]), passando o JSON (contato), a cidade OBVIAMENTE não está indo de maneira correta. Para exemplificar ainda mais, no JSF, por exemplo, esse trabalho era feito pelo CONVERTER.

<div class="form-group col-md-4">
     <label for="cidade">Cidade:</label>
     <input type="text" id="cidade" class="form-control" ng-model="vm.contato.cidade" 
          uib-typeahead="cidade.nome for cidade in vm.complete($viewValue)" 
          typeahead-loading="carregando" typeahead-no-results="noResults"/>
     <i ng-show="carregando" class="glyphicon glyphicon-refresh"></i>
     <div ng-show="noResults">
          <i class="glyphicon glyphicon-remove"></i> Cidade não encontrada.
     </div>
</div>
1 resposta
solução!

Resolvido! Foi preciso somente usar um recurso que o próprio AngularJS já possui.

uib-typeahead="cidade as cidade.nome for cidade in vm.complete($viewValue)"