使用 laravel 關於靜態文件路徑處理
laravel version: 5.5.*
以下方式純屬個人喜好, 不喜勿噴!
因為在寫模板的時候往往需要引入一些 css js image等靜態文件
但是在laravel框架中,如果使用 asset(path) 那路徑實在是太長了,所以..
建議自定義一個配置文件, 將常用的路徑放到到配置文件中
因為配置文件是否自動加載的,所以只要將這些常用的配置文件定義成常量就能直接使用了
0-static-path.png
- 在
/config目錄中配置一個staticfiles.php名字根據個人喜好即可
根據自己的項目路徑來配置這些常量的值
// 前台靜態文件存放目錄
define('_CSS_', '/static/home/css');
define('_JS_', '/static/home/js');
define('_IMGS_', '/static/home/images');
// 插件存放目
define('PLUGINS', '/static/plugins');
// 后台靜態文件存放目錄
define('ADMIN_CSS', '/static/admin/css');
define('ADMIN_JS', '/static/admin/js');
define('ADMIN_IMGS', '/static/admin/images');
// 文件上傳目錄
define('UPLOADS', '/uploads');
- 在
routes/web.php中測試看是否能夠使用
Route::get('/static', function () {
return asset(_CSS_.'/index.css');
});
如果能顯示路徑,就證明能夠正常的使用
- 在模板中使用
<link rel="stylesheet" href="{{asset(_CSS_.'/index.css')}}">
// 等價於
<link rel="stylesheet" href="{{asset('/static/home/css/index.css')}}">
- 靜態文件存放目錄移動
雖然一般不會動,但是鬼知道PM會讓你改什么樣的需求
如果要移動靜態文件存放目錄的話, 只需要改變配置文件中的常量的值就好了
