我正在尝试使用angular中的at.js创建一个带有用户标签的评论框。但是这里实际上没有对此代码的响应
<div ng-reapet ="user_data in data">
{{data.content}}
<input type="text" ng-model="user_content" class="user_content" id="user_content" >
</div>
$(function(){
$.fn.atwho.debug = true;
var names = ["Jacob","Isabella","Ethan","Emma",,"Emily","Daniel","Madison"];
var names = $.map(names,function(value,i) {
return {'id':i,'name':value,'email':value+"@email.com"};
});
var at_config = {
at: "@",
data: names,
headerTpl: '<div class="atwho-header">Member List<small>↑ ↓
</small></div>',
insertTpl: '${name}',
displayTpl: "<li>${name} <small>${email}</small></li>",
limit: 200
};
$inputor = $(".user_content").atwho(at_config);
$inputor.caret('pos', 47);
$inputor.focus().atwho('run');
发布于 2018-09-19 20:25:15
您需要确保在AngularJS完成其呈现周期后运行atwho代码。
对于我来说,我使用了一个带有$timeout的AngularJS组件来确保渲染周期已经完成,或者您也可以使用$postLink。
$timeout(function () {
atWhoWrapper.draw(element, atWhoOptions, otherCopyOptions);
}, 100);https://stackoverflow.com/questions/52403886
复制相似问题