Как получить категорию Дети в дереве вуэйс - PullRequest
0 голосов
/ 05 ноября 2019

Я работаю в проекте laravel и использую библиотеку vuejs. в разделе категорий в компоненте создания формы я добавил vuejs-дерево, чтобы отобразить все добавленные категории, проблема в том, что все категории отображаются в качестве основной категории, даже в категории, в которой родительская категория отображается в jstree в качестве основной категории, это мой код

<div class="form-group">
                            <label for="name">Category Department:</label>
                            <VJstree :data="cats" show-checkbox allow-batch whole-row @item-click="itemClick"></VJstree>
                            <input type="hidden" v-model="parent_id" class="parent_id" />
                        </div>



<script type="text/javascript">
export default {
    data(){
        return {
            Categories:[],
            cats: [],
            id:'',
            parent_id:'',
            name:'',
            image:'',
            description:'',
            tags:'',
            status:'',


        }
    },
    methods:{
        itemClick (node) {
            this.parent_id = node.model.id;
        },
        getCats(){
            axios.get('/dashboard/getCats').then(response=>{
                this.cats = response.data;
            });
        },
        getCategories(){
            let url = '/dashboard/getCategories';
            axios.get(url).then(res=>{
                this.Categories = res.data;
                if(this.Categories){
                    $('.dataTables_empty').hide();
                }
            })
        }

    },
    mounted() {
        this.getCategories();
        this.getCats();
    }
}

функция загрузки котов в контроллере категорий

function load_cats(){
    $cats = Category::selectRaw('name as text')
        ->selectRaw('id as id')
        ->selectRaw('parent_id as parent')->get(['text','id','parent']);
    $deps = [];
    foreach ($cats as $cat){
        $list_arr = [];
        $list_arr['icon']       = '';
        $list_arr['li_attr']    = '';
        $list_arr['a_attr']     = '';
        $list_arr['children']   ='';
        if($cat->id){
            $list_arr['state']      = [
                'opened'    => false,
                'selected'  => false,
                'disabled'  => true,
                'hidden'    => true,
            ];
        }
        $list_arr['id']     = $cat->id;
        $list_arr['parent'] = $cat->parent == null ? '#' : $cat->parent;
        $list_arr['text']   = $cat->text;
        array_push($deps,$list_arr);
    }
    return json_encode($deps,JSON_UNESCAPED_UNICODE);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...