2016-09-10 41 views
2

我有問題提供資源,如圖像,CSS,JavaScript時使用模塊。每個模塊都具有該特定模塊的資源文件夾內的各種資源,如javascript,css,images以及我剛剛編譯到模塊公用文件夾內部的資源。我有問題提供鏈接到該資產。如何鏈接Laravel中模塊內部的資產?

我提供這樣的方式鏈接

<link href="{{ asset('modules/robust/core/public/admin/css/app.css') }}" rel="stylesheet">

它顯示了這種結果 enter image description here

的我想我應該爲模塊定義資產,而是我自定義路徑不知道該怎麼做。請幫幫我。

文件夾結構是這樣的。

enter image description here

+0

你能否請你解釋一下你的意思是什麼**我在使用模塊時提供圖片,CSS,javascript等資源時遇到問題**你在說什麼模塊? – prateekkathal

+0

我正在談論使用laravel進行自定義模塊的自定義模塊。博客,產品,頁面模塊等。每個模塊都有自己的資產路徑。 –

+0

你可以嘗試使用'{{url('modules/robust/core/public/admin/css/app.css')}}方法嗎? – prateekkathal

回答

1

根據我們的意見談話,我建議你通過以下方式

  • 應用程序/模塊/

    • 博客/
    • 核心將你的項目/
    • etc .../
  • 公共/

    • 博客/ CSS
    • 博客/ JS
    • 博客/圖片
    • 核心/ CSS
    • 核心/ JS
    • 核心/圖像
    • etc .../css
    • 等.../JS
    • 等.. /圖片

然後使用類似這樣的命令在控制器

$this->loadViewsFrom() 

和視圖,你可以使用這個

{{ asset('blog/images/myimage.jpg') }} 

如果還有更多的問題,請通過下面的評論讓我知道:)

很高興能有幫助:D

+0

感謝您的幫助! 確定是否有任何問題發生我會讓你知道! –

1

您可以在路線中創建路線路徑。PHP文件:

Route::get('/assets/{module}/{type}/{file}', [ function ($module, $type, $file) { 
 
    $module = ucfirst($module); 
 

 
    $path = app_path("Modules/$module/Resources/Blocks/$type/$file"); 
 

 
    if (\File::exists($path)) { 
 
     return response()->download($path, "$file"); 
 
    } 
 

 
    return response()->json([ ], 404); 
 
}]);

0
{{ Module::asset('blog:js/script.js') }} 

這裏假設你的腳本位於/Modules/ModuleName/Assets/js/script.js。如果它不在文件夾中,只需省略資產調用中的js/part即可。