AngularJS input nicht aktualisieren mit ng-model

Ich habe ein Formular mit drei Eingabefeldern:

<form name="myForm" novalidate ng-controller="MainController as vm">
    <div>
        <input type="text" ng-model="vm.id" name="idInput" required>
        <input type="email" ng-model="vm.email" name="emailInput" required>
        <input type="text" ng-model="vm.output" name="output">
    </div>
</form>

vm.output ist eine variable definiert, die in meinem controller, der enthält einige strings plus vm.id und vm.email:

vm.output = 'myurl.com?id=' + vm.id + '&email=' + vm.email;

Ich möchte zum erzeugen eines Ausgangs-URL, basierend auf die Eingabe des Benutzers in die id und E-Mail-Felder. Jedoch, die Ausgabe-Feld wird nicht aktualisiert, wenn ich eine Eingabe in die beiden anderen Felder. Es sagt nur myurl.com?id=undefined&email=undefined,

Ich kann es arbeiten, wenn ich

ng-value="'myurl.com?id=' + vm.id + '&email=' + vm.email"

Allerdings bin ich mit ng-clip die bekommt Sie die zu kopierenden Inhalte, indem Sie mit ng-model, also muss ich das nutzen.

Auch, hier mein controller:

angular
    .module("app")
    .controller("MainController",[MainController);

function MainController(){
    var vm = this;

    vm.output = 'myurl.com?id=' + vm.id + '&email=' + vm.email;
}

Irgendwelche Vorschläge?

Haben Sie versucht, die syntax mit {{ und }}? vm.Ausgabe = "myurl.com?id=" + {{vm.id}} + "&email=" + {{vm.E-Mail}};`
Verwenden Sie die controller-as-syntax ist irgendwo in deinem code ?
Bearbeitet meine Frage ein wenig. Ich benutze MainController as vm statt $scope

InformationsquelleAutor Schileru | 2015-07-17

Schreibe einen Kommentar