我想了解如何执行以下操作,他们让我尝试在控制器中创建一个函数,而不是在视图中编写代码。
代码是:
<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>
所以基本上这会创建一个文本框,当你点击它时,会出现一个下拉菜单,如果你单击下拉菜单的一个字符串,该字符串将被放在文本框中。
我需要做的是创建一个将放在控制器中的函数,这样我们就可以在视图中调用该函数并保持代码更好。
这个函数只需要做我上面发布的代码的最后一部分,从下拉菜单中取出我点击的字符串并将其放在文本框中!
这很简单,但是在我学习的时候,我不确定如何写它
setDescription(text: string) {
// code should go here.
}
对不起这个愚蠢的问题,我想确保正确理解我在做什么!谢谢
答案 0 :(得分:1)
HTML
ng-click="vm.submitString(descr.text)"
控制器
vm.submitString = function(text){
return vm.presence.description = text;
}
答案 1 :(得分:0)
这样解决了:
Commons.1.0.0.nupkg