我试图完全按照this post中的描述进行操作,但是在Angular2中。
在用户点击触发器后,基本上在输入中使用javascript函数.setSelectionRange(start, end);
。我无法使用Typescript找到任何方法来复制此行为。
提前致谢。
答案 0 :(得分:4)
我找不到使用Typescript复制此行为的方法。
TypeScript只是JavaScript。我怀疑你的意思是说Angular2
(该帖子是Angular1)。
你需要掌握dom元素(这是你似乎正在努力解决的问题)。在您的控制器中,您需要注入ElementRef
。例如。 @Inject(ElementRef) elementRef: ElementRef,
一旦你拥有了元素,你就可以遍历它并做任何你需要进行的访问/手动操作。
文档:https://angular.io/docs/js/latest/api/core/ElementRef-class.html
示例:https://stackoverflow.com/a/32709672/390330
import {Component, ElementRef} from 'angular2/core';
@Component({
selector:'display',
template:`
<input #myname (input) = "updateName(myname.value)"/>
<p> My name : {{myName}}</p>
`
})
class DisplayComponent implements OnInit {
constructor(public element: ElementRef) {
this.element.nativeElement // <- your direct element reference
}
ngOnInit() {
}
}