Laravel和vuejs->如何将控制器数据传递到我的Vue视图?
我同时发现了php、laravel、vuejs,我想有些事情我还没有做好 我制作了一个新的组件表,它是一个基本表,我想在我的应用程序中的许多地方使用它,在那里我只需要指定它的标题、列和数据。 足球控制器是我获取所有数据的地方 以下是目前的工作: app.js footballer.blade.phpLaravel和vuejs->如何将控制器数据传递到我的Vue视图?,laravel,vue.js,vuejs2,laravel-5.2,Laravel,Vue.js,Vuejs2,Laravel 5.2,我同时发现了php、laravel、vuejs,我想有些事情我还没有做好 我制作了一个新的组件表,它是一个基本表,我想在我的应用程序中的许多地方使用它,在那里我只需要指定它的标题、列和数据。 足球控制器是我获取所有数据的地方 以下是目前的工作: app.js footballer.blade.php <tableau titre="{{ $title }}" rows="{{ $gridData }}"> </tableau> 在footballer.bla
<tableau
titre="{{ $title }}"
rows="{{ $gridData }}">
</tableau>
在footballer.blade.php中
<tableau
titre="{{ $title }}"
rows="{{ $gridData }}">
</tableau>
但这不起作用,并告诉我属性或方法不是在实例上定义的,而是在渲染期间引用的
我一点也不管理,我担心的是我有一个好办法:我不应该在足球控制器中获取我的数据吗?如果没有,我在哪里可以买到
提前非常感谢。您在刀片服务器中的属性前面使用了“:”符号,这表示文档中所说的“v-bind”:。 因此,首先,为道具分配字符串时,不需要在“titre”之前加“:” 然后,为了解决您的问题,您可以尝试向道具添加默认值,例如:
props: {
rows: {
default: []
},
columns: {
default: []
},
titre: {
default: ''
}
}
我没有尝试,但我认为它应该可以工作。您在刀片服务器中的属性之前使用了“:”符号,这表示文档中所说的“v-bind”。 因此,首先,为道具分配字符串时,不需要在“titre”之前加“:” 然后,为了解决您的问题,您可以尝试向道具添加默认值,例如:
props: {
rows: {
default: []
},
columns: {
default: []
},
titre: {
default: ''
}
}
我没有尝试,但我认为它应该可以工作。当您同时在Blade和javascript框架中使用{{value}}时。您需要使用以避免刀片和Vue之间发生碰撞
试一试
此外,当使用:rows=value时,值必须是javascript语法,否则当rows=value时,值将被视为字符串
您可能需要使用json_encode来格式化来自Laravel的数据,或者如果您正在使用Laravel 5.5^。当您同时在Blade和javascript框架中使用{{value}}时,使用。您需要使用以避免刀片和Vue之间发生碰撞
试一试
此外,当使用:rows=value时,值必须是javascript语法,否则当rows=value时,值将被视为字符串
您可能需要使用json_encode来格式化来自Laravel的数据,或者在使用Laravel 5.5^时使用。非常感谢,实际上php数组到javascript数组是个问题 在php控制器中,我将数据解析为json
'gridData' =>json_encode($gridData),
在php视图footballer.blade.php中
<tableau
titre="{{ $title }}"
rows="{{ $gridData }}">
</tableau>
现在,我在请求后得到的数据似乎没有被正确解析,但这是另一个问题:非常感谢,事实上,php数组到javascript数组就是问题所在 在php控制器中,我将数据解析为json
'gridData' =>json_encode($gridData),
在php视图footballer.blade.php中
<tableau
titre="{{ $title }}"
rows="{{ $gridData }}">
</tableau>
现在,我在请求后得到的数据似乎没有正确解析,但这是另一点:非常感谢Takachi!事实上,删除:当我有一个字符串时会有帮助。但对于数组,它不起作用,即使在我按照您的建议更改了道具之后:htmlspecialchars希望参数1是字符串,array give我认为您的rows and columns数组包含另一个数组或对象。Laravel提供了一个很好的调试工具,即dd。此方法允许您在页面上显示数组内容。在控制器中使用dd$行可以帮助您理解变量内容并解决问题。非常感谢Takachi!事实上,删除:当我有一个字符串时会有帮助。但对于数组,它不起作用,即使在我按照您的建议更改了道具之后:htmlspecialchars希望参数1是字符串,array give我认为您的rows and columns数组包含另一个数组或对象。Laravel提供了一个很好的调试工具,即dd。此方法允许您在页面上显示数组内容。在控制器中使用dd$行可以帮助您理解变量内容并解决问题。您使用的是哪种Laravel版本?5.2?你能通过按住Ctrl+u来显示{{$title}的内容吗?你使用的是哪种Laravel版本?5.2?你能通过按住Ctrl+u来显示{{$title}的内容吗?
'gridData' =>json_encode($gridData),
<tableau
titre="{{ $title }}"
rows="{{ $gridData }}">
</tableau>
rows: {
type: String,
default: ""
}
var rowsArray = JSON.parse(this.rows)