我使用的是Laravel 5.2和Bootstrap 3管理模板 我的导航菜单上有两个链接:Home和About 当我在家,并点击关于,它转到about页面,但javascript没有加载。但是,当我点击刷新或甚至在关于链接时,它工作正常。 它与主页相同:如果我在主页上点击主页链接或点击刷新,它可以正常工作。但是,如果我在“关于”页面上单击主页,则在我点击刷新或单击“主页”链接之前,主页上的javascript不会加载。 我的路线以最简单的形式设置,请参见下面的routes.php:
Route::get('/', 'HomeController@index');
Route::get('/about', 'AboutController@index');
控制器是由工匠制造的,如:
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('home');
}
}
脚本位于app.blade.php布局中:
<!DOCTYPE html>
<html lang="en">
<head>
<title>My Website - @yield('title')</title>
<link href="/css/application.css" rel="stylesheet">
<link rel="shortcut icon" href="/img/favicon.ico">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<meta charset="utf-8">
<script>
/* yeah we need this empty stylesheet here. It's cool chrome & chromium fix
chrome fix https://code.google.com/p/chromium/issues/detail?id=167083
https://code.google.com/p/chromium/issues/detail?id=332189
*/
</script>
</head>
<body id="app-layout">
@include('layouts.navigation')
<div class="wrap">
@include('layouts.header')
@include('layouts.contentcontainer')
@include('layouts.loader')
</div>
<script src="/lib/jquery/dist/jquery.min.js"></script>
<script src="/lib/jquery-pjax/jquery.pjax.js"></script>
<script src="/lib/bootstrap-sass/assets/javascripts/bootstrap.min.js"></script>
<script src="/lib/widgster/widgster.js"></script>
<script src="/lib/underscore/underscore.js"></script>
<script src="/js/app.js"></script>
<script src="/js/settings.js"></script>
<script src="/lib/slimScroll/jquery.slimscroll.min.js"></script>
<script src="/lib/jquery.sparkline/index.js"></script>
<script src="/lib/backbone/backbone.js"></script>
<script src="/lib/backbone.localStorage/backbone.localStorage-min.js"></script>
<script src="/lib/d3/d3.min.js"></script>
<script src="/lib/nvd3/build/nv.d3.min.js"></script>
<script src="/js/index.js"></script>
<script src="/js/chat.js"></script>
</body>
</html>
答案 0 :(得分:1)
问题解决了。
脚本被错误地包含两次。一旦进入app.blade.php,然后进入实际的home.blade.php和about.blade.php。 相反,我让他们加载一次,现在问题解决了。