如何访问.blade文件中的变量

时间:2019-08-28 11:36:51

标签: php laravel laravel-blade

我有一个js文件,它像这样声明了组件的数据

data() {
    return {
        registerForm: $.extend(true, new SparkForm({
            hasCoupon: false,
        }), Spark.forms.register)
    }
}

和一个尝试访问hasCoupon的刀片文件

@if(!$registerForm.hasCoupon)
  @include('spark::auth.register-billing')
@else
  @include('spark::auth.register-coupon')
@endif

但这会引发错误

  

使用未定义的常量hasCoupon-假定为“ hasCoupon”

如何访问此变量?

3 个答案:

答案 0 :(得分:1)

if语句中的代码是PHP,因此您无法像通过点.操作符那样访问Javascript对象中的数据,而是使用箭头->操作符来访问PHP对象的属性

@if(!$registerForm->hasCoupon)
  @include('spark::auth.register-billing')
@else
  @include('spark::auth.register-coupon')
@endif

答案 1 :(得分:1)

@if(!$registerForm['hasCoupon'])
  @include('spark::auth.register-billing')
@else
   @include('spark::auth.register-coupon')
@endif

答案 2 :(得分:1)

技巧可能会帮助您。

<script>
  if(!registerForm.hasCoupon){
    @include('spark::auth.register-billing')
  }else
    @include('spark::auth.register-coupon')
  }
</script>