【发布时间】:2020-03-30 13:42:54
【问题描述】:
我正在尝试将变量从 Blade 传递到 Vue 组件道具。但是,当我传递变量时,出现了问题。我收到的错误如下:
[Vue warn]: Error compiling template:
invalid expression: Invalid or unexpected token in
[{"id":6,"name":"aaa","created_at":"2019-12-05
Raw expression: :companies="[{"id":6,"name":"aaa","created_at":"2019-12-05"
153| <!-- Page Content -->
154|
155| <company_index :companies="[{"id":6,"name":"aaa","created_at":"2019-12-05" 14:35:38","updated_at":"2019-12-05="" 14:35:38"}]=""></company_index>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
156| <!-- END Page Content -->
157| </main>
(found in <Root>)
如您所见,添加了一个随机引用,该引用不存在于日期时间本身(在2019-12-05 之后)。只有在将其传递给 Vue 组件时才会添加它。这是我的刀片文件中的代码:
@extends('layouts.backend')
@section('content')
<!-- Page Content -->
<company_index :companies={{json_encode($companies)}}></company_index>
<!-- END Page Content -->
@endsection
我尝试了以下方法:
- 检查日期时间是否有额外的报价,但事实并非如此。
- 检查了其他 Eloquent 模型是否有同样的问题,他们确实有(他们也使用 Laravel 的标准日期时间)。
- 从我的刀片文件中删除
json_encode - 将
:companies={{json_encode($companies)}替换为:companies={!! $companies !!} - 搜索了有同样问题的人,但没有找到任何关于这个问题的信息。
我认为我的代码没有任何问题,但我不确定我的问题是什么。如果您需要更多详细信息,请询问。
【问题讨论】:
-
尝试添加双引号? :companies="{{json_encode($companies)}}"
-
@JesusErwinSuarez 添加您的评论作为答案 干得好
-
刚刚发帖,谢谢指教。
标签: laravel vue.js laravel-blade