2014-12-19 58 views
2

我得到一個非常奇怪的錯誤使用laravelLaravel - 查看:請工作不正常,包括外部文件

Route::get('/', function() 
{ 
    return View::make('index'); 
}); 

它加載內部視圖在index.php當正確

當我有類似http://localhost:8000/xyz(不存在),然後它也路由到index.php和所有js文件得到正確加載,但當我轉到http://localhost:8000/xyz/abc(不存在)

這不加載JS文件正確,我的頁面呈現,錯誤

App::missing(function($exception) 
{ 
    return View::make('index'); 
}); 

我的應用程序缺少的功能。

爲什麼會發生這種情況。

更多這個我有另一個laravel實例,並沒有給這樣的問題,也可以處理

http://localhost:8000/xyz/abc/ahbfd/dfdfd/dfdfd (不存在)

沒有任何錯誤。

希望我很清楚。

+0

你在'/ start/global.php'中嘗試了'App :: error'嗎? – 2014-12-19 11:09:37

+0

應用程序錯誤已經存在 '應用::錯誤(函數($例外例外,$代碼) { \t日誌::錯誤($除外); });' – AngularDev 2014-12-19 11:11:25

回答

0

鏈接到JS或CSS文件最適合與URL::asset()ÙRL::to()。假設你的包就在於廠商文件夾,你會做這樣的事情:

<script src="{{URL::to('/vendor')}}/packages/bower/jquery/dist/jquery.min.js"></script> 

或爲公共/資產文件夾

<script src="{{URL::asset('/')}}/packages/bower/jquery/dist/jquery.min.js"></script> 

這樣,你保證Laravel創建正確的路徑到你的文件對應的被叫路線。

+0

沒有運氣還是一樣。這是正確的路由,這不是問題,但視圖內引用的js文件沒有得到正確加載。 – AngularDev 2014-12-19 11:21:11

+0

你可以發佈,如何鏈接到js文件? – 2014-12-19 11:27:36

+0

' <腳本類型= 「文本/ JavaScript的」 SRC = 「套餐/亭子/ jquery的/ DIST/jquery.min.js」> \t

\t \t

You have arrived.

\t
' – AngularDev 2014-12-19 11:29:35

0

以下是我與R & D.

找到你需要添加 <base href="/" target="_top"> </base> <html>之前可能或任何你覺得合適的答案。

+0

我寧願讓Laravel創建我的Url,但如果這對你有效...... – 2014-12-19 11:45:24

+0

但我想''是最容易做到的,因爲我有很多JS包含在我的'index.php'因此它有點困難和耗時的任務來替換腳本語法,也將難以維護。 – AngularDev 2014-12-19 11:49:25

+1

不,因爲用'Url :: to()'laravel來照顧它;-) – 2014-12-19 16:49:03