首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将Laravel控制器的值发送到Vue.js?

如何将Laravel控制器的值发送到Vue.js?
EN

Stack Overflow用户
提问于 2019-06-29 18:05:24
回答 1查看 1.1K关注 0票数 1

我有控制器"SomethingController",型号"ValueModel“和视图"Show.blade.php”和vue的组件“vue-ValueModel”。

现在我想从SomethingController获得发送值(我从模型"ValueModel“得到的值是JSON格式的)到Show.balde.php,它将包含vue "vue-component".。最后,我想从控制器中获得vue的值。

我知道如何从控制器发送值到视图。当值在字符串中时,我通过使用props将其发送到vue。但是,我无法将JSON值从prop发送到vue。

控制器

代码语言:javascript
运行
复制
//SomethingController.php
class SomethingControllerextends Controller
{
    public function index()
    {
        $e = ValueModel::get();
        $e = json_encode($e->toArray());
        return view('pages.Show')->with('e', $e);
    }
}

视图

代码语言:javascript
运行
复制
//Show.blade.php
<div class="app">
    <vue-component data={!!$e!!}></vue-component>
</div>

Vue

代码语言:javascript
运行
复制
//SomethingController.php
<script>
export default {
    props: ['data'],
    data(){
        return{
            d : this.data,
        }
    },
    beforeCreate(){
        console.log('helllo');
        console.log(d)
        },
}
</script>

令我惊讶的是,我正在窗口上打印数据。而函数beforeCreate()中的操作在将值打印到窗口后不起作用。

如图像所示,数据正在从控制器发送的窗口上打印,就像我希望在vue中显示数据一样。我也想知道为什么要印刷。

对于从控制器返回的字符串,所有都可以正常工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-23 04:18:58

我知道答案了,这里必须用单引号。data = '{!!$e!!}',这是因为$e中的数据有双引号。如:[{"country":"Alwaysland","zip":"0023"},{"country":"Neverland","zip":"00111"}]

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56819755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档