角度类型提前:观察数据集的变化
Angular typeahead : watch for dataset change
我在我的项目中使用了Siyfion的typeahead指令。
我在控制器中所做的是这样的:
$http({method: 'GET', 'url': CONFIG.SOMEURL})
.success(function(data, status, headers , config){
if(status==200)
{
$scope.objects = data;
for(i=0; i < $scope.objects.length; i++){
$scope.allObjects.push($scope.objects[i].name);
}
console.log($scope.allObjects);
$scope.dataSet = {
name : 'objs',
local : $scope.allObjects
};
我从视图中获得一个 json 数组django
。但问题出在我的 HTML 模板中:
<input type="text" class='sfTypeahead' datasets='dataSet' ng-model='testname' />
由于在进行异步调用时dataSet
最初为空,因此出现错误:
TypeError: Cannot read property 'name' of undefined
没有办法让我寻找dataSet
或datasets
的变化,以便在填充数组allObjects
后,DOM 可能会刷新?
谁能建议在这里可以做什么
完全披露:我是上述指令的作者。
从本质上讲,您正在尝试在Angular本身中进行所有预取,而Typeahead.js和Bloodhound是专门为您设计的。仔细看看 https://twitter.github.io/typeahead.js/examples/,并特别注意寻血猎犬建议引擎。
也许有一些用途:
- https://twitter.github.io/typeahead.js/examples/#remote
- https://github.com/twitter/typeahead.js/blob/master/doc/bloodhound.md#remote
- https://github.com/twitter/typeahead.js/blob/master/doc/bloodhound.md#prefetch
注意:您使用的指令版本(9 个月前)不支持更新数据集局部变量,但现在支持,因此如果您愿意,可以这样做。
相关文章:
- React中的数据集表示
- 使用相同的数据集绘制各种符号
- 多维数据集网格未在指定的分区中绘制
- chart.js 2.0为数据集添加了新属性
- Kendo网格中数据集的最高值
- 具有大型数据集的组件仅在 IE11/Edge 上运行缓慢
- 具有关联数组数据集的D3.js表
- javascript中网络图表的大型数据集
- 具有多个数据集的分组散点图D3
- 如何在web上动态可视化数据集
- Javascript D3如何从CSV访问和操作数据集
- Chart.js2.X中的条形值-数据集元数据未定义
- 访问HTML数据集
- D3.js如何只创建一个绑定到多个数据项的数据集的元素
- WebGL多纹理多维数据集
- 如何外部联接两个数据集(基于多个主键)
- 使用JQUERY将包含数据集的JSON绑定到dropdownlist
- 如何无限循环数据集字符串
- 如何为 Flot JS 动态创建数据集
- 角度类型提前:观察数据集的变化