javascript - 使用 Tribute.js 使用 Ajax 加载数据以进行提及
问题描述
您好我正在尝试使用贡品.js来加载数据。但是,我面临一个错误,Unable to append to values, as it is a function
. 目前我的配置是:
$(document).ready(function () {
var tribute = new Tribute({
values: function (search, cb) {
getUsernames(search, users => cb(users))
},
menuItemTemplate: function (item) {
return '<img src="'+item.original.img.url + '">' + item.original.name + " " + item.original.last;
},
selectTemplate: function (item) {
return '@' + item.original.username;
},
});
tribute.attach(document.getElementById("id_content"));
function getUsernames(search, cb){
var xhr = new XMLHttpRequest();
xhr.open('GET', '/get/user/mentions?q='+search, true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onload = function () {
var data = JSON.parse(xhr.responseText);
cb(data);
if (xhr.readyState == 4 && xhr.status == "200") {
$.each(data, function(i, item) {
tribute.append(0,[
{
name: item.first_name,
last: item.last_name,
username:item.username,
img: item.image
},
]);
});
} else if (xhr.status === 403) {
cb([]);
}
}
xhr.send(null);
}
})
哪个each
循环导致了问题,我想知道如何正确地从 Ajax 加载数据?
解决方案
推荐阅读
- python - 使用本地共享读/写存储(文件/数据库)作为多个 python 脚本/进程的缓存的便携方式
- matlab - MATLAB如何找到所有可能的重复组合而不重复?
- javascript - 如何将 if 转换为 while
- html - xpages如何在资源中调用其他数据库js库
- swift - swift AVAudioEngine 和 AVAudioSinkNode sampleRate 转换
- html - 我应该如何处理 validateDOMNesting(...) 错误?
- java - 从 Java 向 Oracle 插入数千条记录,如何获得最佳性能?
- python - 如何用 Python 替换部分列 String SQLite3
- javascript - 动态更改时如何更改MenuItem(antd)的样式?
- javascript - 对于 Material UI,我如何知道每个组件的属性是什么?