1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Knockout

Discussão em 'Web Development' iniciada por Filipe_O, 5 de Junho de 2018. (Respostas: 1; Visualizações: 168)

  1. Filipe_O

    Filipe_O Power Member

    Boas pessoal.
    Num curso online de front-end development, desenvolvi uma pequena app que exibe uma lista de imagens e ao carregar numa imagem, um objecto é passado para a view e a imagem é apresentada junto com outras propriedades do objecto:
    Código:
    let viewModel = function () {
        let self = this;
        this.cats = ko.observableArray([]);
        catList.forEach(function(catItem) {
            self.cats.push(new Gata(catItem));
        });
        this.currentCat = ko.observable((self.cats()[0]))
        this.setCat = function(data) {
            self.currentCat = ko.observable(data);
        }   
    }
    CatList é um array de objectos.
    Gata é uma função que aplica observadores a propriedades.

    O código anterior não funciona. Para funcionar, teria de ser:
    Código:
    self.currentCat(data);
    
    Ao invés do colocado. A minha questão é: Porquê?

    Obrigado
     
  2. snoopy21

    snoopy21 Power Member

    Os ko.observable são funções que permitem ler e atualizar um valor. A sintaxe é:

    Ler valor
    Código:
    object.property()
    Atualizar valor
    Código:
    object.property(newValue)
     

Partilhar esta Página