Ich würde gerne verstehen, wie Sie das Folgende tun, sie haben mich gebeten, zu versuchen, eine Funktion im Controller zu erstellen, anstatt den Code in der Ansicht zu schreiben.AngularJS, brauche Hilfe beim Erstellen einer einfachen Funktion
Der Code ist:
<div class="row">
<div class="col-xs-12 max300"
uib-dropdown is-open="vm.descriptionDropdownOpen">
<textarea name="description" class="form-control"
ng-model="vm.presence.description"
ng-click="vm.toggleDescriptionDropdown()"
autofocus>
</textarea>
<ul id="descriptionDropdown" uib-dropdown-menu>
<li ng-repeat="descr in vm.loadedDescriptions"
ng-click="vm.presence.description = descr.text;
vm.descriptionDropdownOpen = false;">
{{descr.text}}
</li>
</ul>
</div>
</div>
so dass im Grunde das ein Textfeld erstellt, und wenn Sie darauf klicken, wird ein Dropdown-Menü angezeigt wird, und wenn Sie auf eine Reihe von Dropdown-Menü klicken, wird diese Zeichenfolge wird in das Textfeld eingefügt.
Was ich tun muss, ist eine Funktion zu erstellen, die in den Controller gelegt wird, so dass wir einfach diese Funktion in der Ansicht aufrufen und den Code schöner halten können.
Diese Funktion muss nur den letzten Teil des Codes, den ich oben gepostet habe, machen, nehme den String, auf den ich klicke, aus dem Dropdown-Menü und lege ihn in das Textfeld!
Es ist wirklich einfach, aber wie ich ich bin nicht so sicher, lerne, wie ich es
setDescription(text: string) {
// code should go here.
}
Sorry für diese dumme Frage schreiben sollte, sein möchte nur sicher, richtig zu verstehen, was ich tue! danke
Ist Ihre Ansicht Code nicht bereits das gleiche tun? 'ng-click =" vm.presence.description = descr.text; ' – puelo
ja! aber als ich lerne, haben sie mich gefragt, wie ich das mit einer funktion im controller implementieren könnte, um den code in der sicht sauber zu halten! ! – AJ989