Создать динамическое меню кендо для angularjs - PullRequest
0 голосов
/ 02 октября 2018

Я пытаюсь создать динамическое меню, но оно не работает, если назначить ему данные внутри функции.Я использую сервис для вызова API.Внутри функции generateMenu я могу поддерживать данные, но она не генерирует меню кендо

var menuurl='http://localhost:8000/api/menu'     
    service.callapi(menuurl,function(r){
        generateMenu(r.data)         
    })      

    function generateMenu(read)
    {
       console.log(read);               //here i am getting the data
       $scope.panelBarDataSource=read;  //menu is not generating

    } 

мой HTML-код

<ul kendo-menu
            k-orientation="menuOrientation"
            k-rebind="menuOrientation"
            k-data-source="panelBarDataSource"
            k-on-select="onSelect(kendoEvent)">      

        </ul>

, если я скопирую ответ JSON API в переменнуювне этой функции все работает нормально.

var data=[
        {
            "id": 7,
            "type": "folder",
            "text": "sales",
            "parent_id": "null",
            "short_url": "sales",
            "items": [
                {
                    "id": 8,
                    "type": "link",
                    "text": "sales_bill",
                    "parent_id": "7",
                    "short_url": "sales_bill"
                },
                {
                    "id": 9,
                    "type": "link",
                    "text": "sales_quote",
                    "parent_id": "7",
                    "short_url": "sales_quote"
                },
                {
                    "id": 10,
                    "type": "link",
                    "text": "sales_return",
                    "parent_id": "7",
                    "short_url": "sales_return"
                }
            ]
        },


            {
                "id": 1,
                "type": "link",
                "text": "company",
                "parent_id": "null",
                "short_url": "company"
            },


    ];

    $scope.panelBarDataSource=read; //this generates the menu

почему меню не генерируется внутри функции обратного вызова.

...