Laravel 5.1,在视图文件中使用变量名

use*_*515 5 php smarty laravel-5.1

有人可以解释为什么接下来的事情在laravel 5.1中不起作用:我查看文件login1.blade.php

@extends('ajaxforms.form1')
@section('form')
<input type="text" name="email" /><input type="password" name="password" />
@endsection
@section('script')
<script type="text/javascript">var modalName = '#{{$modalname}}';</script>
@endsection
@section('link')
<li ng-controller="login_controller" id="login_controller">
<a href="#" data-toggle="modal" data-target="#{{$modalname}}">Sign in</a></li>
@endsection
Run Code Online (Sandbox Code Playgroud)

register1.blade.php

@extends('ajaxforms.form1')
@section('form')
<input type="text" name="name" /><input type="text" name="email" />
<input type="password" name="password" /><input type="password2" name="password2" />
@endsection
@section('script')
<script type="text/javascript">var modalName = '#{{$modalname}}';</script>
@endsection
@section('link')
<li ng-controller="register_controller" id="register_controller">
<a href="#" data-toggle="modal" data-target="#{{$modalname}}">Sign in</a></li>
@endsection
Run Code Online (Sandbox Code Playgroud)

..和form1.blade.php

<div id="{{ $modalname }}">
@yield('form')
</div>
@yield('script')
@yield('link')
Run Code Online (Sandbox Code Playgroud)

还有master.blade.php中的链接:

@include('ajaxforms.login1',['modalname' => 'modalLogin'])
@include('ajaxforms.register1', ['modalname' => 'modalRegister'])
Run Code Online (Sandbox Code Playgroud)

这会生成一个代码:

<div id="modalLogin">
<input type="text" name="email" /><input type="password" name="password" />
</div>
<script type="text/javascript">var modalName = '#modalLogin';</script>
<li ng-controller="login_controller" id="login_controller">
<a href="#" data-toggle="modal" data-target="#modalLogin">Sign in</a></li>

<div id="modalRegister">
<input type="text" name="email" /><input type="password" name="password" />
</div>
<!--Here I want to '#modalRegister' instead of '#modalLogin'; And register_controller 
instead of login_controller. Why doesn't work?????????????????????????-->
<script type="text/javascript">var modalName = '#modalLogin';</script>
<li ng-controller="login_controller" id="login_controller">
<a href="#" data-toggle="modal" data-target="#modalLogin">Sign in</a></li>
Run Code Online (Sandbox Code Playgroud)

谢谢

anw*_*erj 1

我认为问题出在部分定义上,您对同一请求使用了两个具有相同名称的不同部分。如果部分形式一旦定义,它将被缓存并在以后使用相同的代码使用。 此链接可以提供相反的方式。