相关疑难解决方法(0)

使用服务的Kendo UI Angular JS和AutoComplete

我正在制作一个Angular App,我开始使用一些Kendo UI控件.我在连接AutoComplete控件时遇到了一些问题.我想使用一个工厂,它将从我的数据库中返回"自动完成"值列表.

我已经包含了自动完成控件,我正在尝试使用k-options属性:

<input kendo-auto-complete ng-model="myFruit" k-options="FruitAutoComplete"  />
Run Code Online (Sandbox Code Playgroud)

在我的控制器中,下面的硬编码水果列表工作:

 $scope.FruitAutoComplete = {
            dataTextField: 'Name',
            dataSource:[
                { id: 1, Name: "Apples" },
                { id: 2, Name: "Oranges" }
            ]
}
Run Code Online (Sandbox Code Playgroud)

当我把它移到我的工厂时,我看到它调用并从工厂返回数据,但它从未绑定到屏幕上.

 $scope.FruitAutoComplete = {
            dataTextField: 'Name',
            dataSource: new kendo.data.DataSource({
                transport: {
                    read: function () {
                        return    FruitFactory.getYummyFruit($scope.myFruit);
                    }
                }
            })
        }
Run Code Online (Sandbox Code Playgroud)

我最终得到了永远不会满足自动完成的请求. 在此输入图像描述

我的工厂正在回收一系列水果[我的水果工厂代码:

     getYummyFruit: function (val) {
                    return $http.get('api/getFruitList/' + val)
                        .then(function (res) {                          
                            var fruits= [];
                            angular.forEach(res.data, function (item) {
                                fruits.push(item);
                            });
                            return fruits;
                        });
                }
Run Code Online (Sandbox Code Playgroud)

kendo-ui angularjs kendo-autocomplete kendo-datasource

6
推荐指数
1
解决办法
1万
查看次数