在我的AngularDart应用程序中,我有一个大小限制(160字符)的小/简单文本我可以显示html字符串和剩下的字符:
<textarea class="form-control" name="description" id="description" ng-model="consent.inputDescription" rows="3"></textarea>
<p>Remaining chars: {{consent.getRemainingChars()}}</p>
它不工作与html字符,如è
ng-bind-html
指令可以正确显示html字符串,但控制器内的字符串不解释,所以我不能正确计算剩余的字符
($sce)
对完成这项工作很有用。我没有在AngularDart中找到它。在AngularDart中是否有类似的实现?
这个实现工作,等待更好:-/也许AngularDart可以简化这段代码。
我用
捕获输入字段的所有事件//handle text aera events
query("#description")
..onChange.listen(handler)
..onKeyDown.listen(handler)
..onKeyUp.listen(handler)
..onCut.listen(handler)
..onPaste.listen(handler);
所以我可以在处理程序中计算剩下的字符
void handler(Event event) {
remainingChars = _getRemainingChars();
}
剩余字符使用textarea值(不安全)
计算_getRemainingChars() {
int nbChars = 160-_getUnsafeDescription().length;
return nbChars;
}
我阅读编辑后的文本:
_getUnsafeDescription(){
var textarea = _shadowRoot.query('#description');
return textarea.value;
}
文本区域绑定html内容
<textarea class="form-control" name="description" id="description" ng-bind-html="consent.inputDescription" rows="3"></textarea>
<p ng-if="consent.remainingChars">Remaining chars: {{consent.remainingChars}}</p>
不安全的编辑字符串post,转义并存储在后端