Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Fusioncharts使用vue和laravel显示来自控制器的数据,其中条件为计数和分组_Javascript_Php_Laravel_Vue.js_Charts - Fatal编程技术网

Javascript Fusioncharts使用vue和laravel显示来自控制器的数据,其中条件为计数和分组

Javascript Fusioncharts使用vue和laravel显示来自控制器的数据,其中条件为计数和分组,javascript,php,laravel,vue.js,charts,Javascript,Php,Laravel,Vue.js,Charts,我有一个甜甜圈图表,我想根据列type显示用户的计数。在我的控制器中,我得到了一个返回计数的查询。我的问题是,在vue组件中呈现图表时,没有显示任何数据。但是,当我查看我的vue devtools时,会显示数据,但它是以数组/对象格式显示的。有人知道我该怎么做吗 我的控制器 $users = \DB::table('users') ->select(\DB::raw('count(*) as type'))

我有一个甜甜圈图表,我想根据列
type
显示用户的计数。在我的控制器中,我得到了一个返回计数的查询。我的问题是,在vue组件中呈现图表时,没有显示任何数据。但是,当我查看我的vue devtools时,会显示数据,但它是以数组/对象格式显示的。有人知道我该怎么做吗

我的控制器

  $users = \DB::table('users')
                     ->select(\DB::raw('count(*) as type'))
                     ->groupBy('type')
                     ->get();
         return response()->json($users);
vue组件中的我的脚本

 return {

            users: [],
            "type": "doughnut2d",
            "renderAt": "chart-container",
            "width": "550",
            "height": "350",
            "dataFormat": 'json',
            "dataSource": {
                "chart": {
                    "caption": "User Count", "theme": "fusion"
                }
                ,
                "data": [{
                    "label": "Admin Users",
                    "value": this.users
                }, 
               ]
            }
        }
    },
    methods: {

          getdata(){
           axios.get('api/graphs')
            .then(res=>{
                this.users = res.data;
                this.dataSource.data[0].value = this.users
            })
       }

    },
Vue开发工具


用户类型admin的当前计数为
4
,常规用户为
2
,这是正确的。因此,甜甜圈将分为两部分。

您还应该返回用户类型,以便dataSource.data.label是动态的

应该是这样的

dataSource.data.push({
    'label': res.data.typeUser
    'value': res.data.count
})
在您的dataSource.data中

 "dataSource": {
                "chart": {
                    "caption": "User Count", "theme": "fusion"
                }
                ,
                "data":[]
            }

请更改查询。它应返回类型和计数。像这个

我应该把
dataSource.data.push
objec放在哪里?在电脑里?在axios里面,先生。等等,我在这里开个聊天室