校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Laravel5.5 視圖 - 創建視圖和數據傳遞示例

Laravel5.5 視圖 - 創建視圖和數據傳遞示例

熱門標簽:太原極信防封電銷卡 天津營銷電話機器人加盟代理 南寧crm外呼系統平臺 電銷招聘機器人 格陵蘭島地圖標注 福泉電話機器人 事業單位如何百度地圖標注 熱線電話機器人 地圖標注入哪個科目

創建視圖

視圖包含應用的 HTML 代碼,并將應用的控制器邏輯和表現邏輯進行分離。視圖文件存放在 resources/views 目錄中。下面是一個簡單的視圖示例:

!-- resources/views/greeting.blade.php 視圖文件 -->
 
html>
  body>
    h1>Hello, {{ $name }}/h1>
  /body>
/html>

可以通過輔助函數 view ,返回這個視圖響應:

Route::get('/', function () {
  return view('greeting', ['name' => 'jack']);
});

view 方法的第一個參數是 resources/views 目錄下相應的視圖文件的名稱,第二個參數是一個數組,表示傳遞給視圖文件的數據。

在這個例子中,我們傳遞了一個 name 變量,在視圖中通過使用 Blade 語法將其顯示出來。

當然,視圖還可以存放在 resources/views 的子目錄中,用“.”號來引用子目錄中的視圖。

例如,如果視圖存放路徑是 resources/views/admin/profile.blade.php,那么我們可以這樣引用它:

return view('admin.profile', $data);

判斷視圖是否存在

如果需要判斷視圖是否存在,可調用 View 門面上的 exists 方法,如果視圖存在則返回 true:

use Illuminate\Support\Facades\View;
 
if (View::exists('emails.customer')) {
  //
}

創建第一個有效視圖

調用 View 門面上的 first 方法,可以用于創建給定視圖數組中的第一個存在的視圖:

use Illuminate\Support\Facades\View;
 
return View::first(['custom.admin', 'admin'], $data);

這個功能在應用或擴展包允許視圖被自定義或覆蓋時很有用。

傳遞數據到視圖

可以簡單通過數組方式將數據傳遞到視圖:

return view('greeting', ['name' => 'jack']);

除此之外,還可以通過 with 方法傳遞獨立的數據片段到視圖:

$view = view('greeting')->with('name', 'jack');

在視圖間共享數據

有時候,我們需要在所有視圖之間共享數據片段,這時可以使用視圖門面的 share 方法,通常,需要在某個服務提供者的 boot 方法中調用 share 方法,你可以將其添加到 AppServiceProvider 或生成獨立的服務提供者來存放這段代碼邏輯:

?php
 
namespace App\Providers;
 
use View;
 
class AppServiceProvider extends ServiceProvider
{
  /**
   * 啟動所有應用服務
   *
   * @return void
   */
  public function boot()
  {
    View::share('key', 'value');
  }
 
  /**
   * 注冊服務提供者
   *
   * @return void
   */
  public function register()
  {
    //
  }
}

視圖 Composer

視圖 Composer 是當視圖被渲染時的回調函數或類方法。

如果你有一些數據需要在視圖每次渲染時都做綁定,可以使用視圖 Composer 將邏輯組織到一個單獨的地方。

在本例中,首先要在某個服務提供者中注冊視圖 Composer,我們將會使用 View 門面來訪問 Illuminate\Contracts\View\Factory 的底層實現,記住,Laravel 不會包含默認的視圖 Composer 目錄,我們可以按照自己的喜好組織其路徑,例如可以創建一個 app/Http/ViewComposers 目錄:

?php
 
namespace App\Providers;
 
use Illuminate\Support\Facades\View;
use Illuminate\Support\ServiceProvider;
 
class ComposerServiceProvider extends ServiceProvider
{
  /**
   * 在容器中注冊綁定.
   *
   * @return void
   */
  public function boot()
  {
    // 使用基于類方法的 composers...
    View::composer(
      'profile', 'App\Http\ViewComposers\ProfileComposer'
    );
 
    // 使用基于回調函數的 composers...
    View::composer('dashboard', function ($view) {});
  }
 
  /**
   * 注冊服務提供者.
   *
   * @return void
   */
  public function register()
  {
    //
  }
}

注:如果創建一個新的服務提供者來包含視圖 Composer 注冊,需要添加該服務提供者到配置文件 config/app.php 的 providers 數組中。

現在我們已經注冊了視圖 Composer,每次 profile 視圖被渲染時都會執行 ProfileComposer@compose 方法,接下來我們來定義該 Composer 類:

?php
 
namespace App\Http\ViewComposers;
 
use Illuminate\View\View;
use Illuminate\Repositories\UserRepository;
 
class ProfileComposer
{
  /**
   * 用戶倉庫實現.
   *
   * @var UserRepository
   */
  protected $users;
 
  /**
   * 創建一個新的屬性composer.
   *
   * @param UserRepository $users
   * @return void
   */
  public function __construct(UserRepository $users)
  {
    // 依賴注入通過服務容器自動解析...
    $this->users = $users;
  }
 
  /**
   * 綁定數據到視圖.
   *
   * @param View $view
   * @return void
   */
  public function compose(View $view)
  {
    $view->with('count', $this->users->count());
  }
}

視圖被渲染前,Composer 類的 compose 方法被調用,同時 Illuminate\View\View 實例被注入該方法,從而可以使用其 with 方法來綁定數據到視圖。

注:所有視圖 Composer 都通過服務容器被解析,所以你可以在 Composer 類的構造函數中聲明任何你需要的依賴。

添加 Composer 到多個視圖

你可以傳遞視圖數組作為 composer 方法的第一個參數來一次性將視圖 Composer 添加到多個視圖:

View::composer(
  ['profile', 'dashboard'],
  'App\Http\ViewComposers\MyViewComposer'
);
composer 方法還支持 * 通配符,允許將一個 Composer 添加到所有視圖:

View::composer('*', function ($view) {
  //
});

視圖創建器

視圖創建器和視圖 Composer 非常類似,不同之處在于前者在視圖實例化之后立即失效而不是等到視圖即將渲染。

使用 View 門面的 creator 方法即可注冊一個視圖創建器:

View::creator('profile', 'App\Http\ViewCreators\ProfileCreator');

以上這篇Laravel5.5 視圖 - 創建視圖和數據傳遞示例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Laravel 5框架學習之向視圖傳送數據
  • Laravel 5框架學習之模型、控制器、視圖基礎流程
  • Laravel 5框架學習之向視圖傳送數據(進階篇)
  • Laravel 5框架學習之路由、控制器和視圖簡介
  • Laravel 5框架學習之子視圖和表單復用
  • Laravel框架實現多個視圖共享相同數據的方法詳解
  • laravel框架模型、視圖與控制器簡單操作示例
  • laravel通過a標簽從視圖向控制器實現傳值
  • Laravel實現通過blade模板引擎渲染視圖
  • laravel框架中視圖的基本使用方法分析

標簽:郴州 阿克蘇 自貢 佳木斯 香港 金華 寶雞 通化

巨人網絡通訊聲明:本文標題《Laravel5.5 視圖 - 創建視圖和數據傳遞示例》,本文關鍵詞  Laravel5.5,視圖,創建,和,數據,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Laravel5.5 視圖 - 創建視圖和數據傳遞示例》相關的同類信息!
  • 本頁收集關于Laravel5.5 視圖 - 創建視圖和數據傳遞示例的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    亚洲精品一区二区三区四区高清| 91免费在线播放| 国产激情一区二区三区四区 | 国产乱码一区二区三区| 国产盗摄精品一区二区三区在线| 国产成人鲁色资源国产91色综| 国产精品一二三四区| 色婷婷久久久久swag精品| 欧美日韩综合在线| 久久久精品国产免大香伊 | 风间由美性色一区二区三区| 成人av电影在线观看| 欧美精品aⅴ在线视频| 国产欧美日韩在线看| 亚洲综合一区二区| 国产精品一区久久久久| 91国产精品成人| 精品国产髙清在线看国产毛片| 国产精品视频线看| 狠狠色丁香婷婷综合| 欧美午夜影院一区| 亚洲婷婷在线视频| 国产精品1区二区.| 日韩一级欧美一级| 日韩国产在线观看| 欧美日韩一二三区| 亚洲国产视频网站| 一本大道久久a久久精二百| 国产精品热久久久久夜色精品三区| 奇米影视7777精品一区二区| 欧美午夜电影网| 亚洲一二三四在线| 欧美精品精品一区| 亚洲mv在线观看| 在线观看视频欧美| 亚洲国产综合色| 欧美色视频在线| 日韩激情一二三区| 日韩欧美中文字幕公布| 奇米一区二区三区| 精品国产亚洲一区二区三区在线观看| 免费日韩伦理电影| 久久久国产午夜精品 | 欧美日本乱大交xxxxx| 精品一区二区日韩| 中文字幕av在线一区二区三区| 成人aa视频在线观看| 视频一区欧美日韩| 久久久国际精品| 欧美少妇一区二区| 国产在线精品国自产拍免费| 中文字幕免费不卡在线| 欧美中文字幕一区| 国产在线精品视频| 一二三四区精品视频| 欧美成人激情免费网| 91色九色蝌蚪| 国产精品1区二区.| 麻豆成人免费电影| 中文字幕在线一区二区三区| 91精品一区二区三区久久久久久| 大尺度一区二区| 激情欧美一区二区三区在线观看| 亚洲三级视频在线观看| 久久久久国产成人精品亚洲午夜| 欧美日韩在线免费视频| 成人综合婷婷国产精品久久 | 精品视频色一区| 色94色欧美sute亚洲13| 99精品久久只有精品| 国产91精品久久久久久久网曝门| 日本美女一区二区三区视频| 夜夜亚洲天天久久| 国产精品美女久久福利网站| 国产日韩欧美不卡在线| 久久综合九色综合97_久久久| 日韩欧美一卡二卡| 日韩一区二区麻豆国产| 欧美精品久久99久久在免费线| 欧美中文字幕一区二区三区亚洲 | 一区二区三区欧美日| 一区精品在线播放| 国产精品每日更新在线播放网址| 亚洲精品在线三区| 国产精品婷婷午夜在线观看| 国产精品污www在线观看| 国产精品欧美精品| 亚洲激情图片一区| 天涯成人国产亚洲精品一区av| 亚洲一级二级在线| 国产在线视频不卡二| 91在线无精精品入口| 精品视频999| 国产婷婷色一区二区三区在线| 亚洲理论在线观看| 日本中文字幕不卡| 顶级嫩模精品视频在线看| 91福利视频网站| 欧美不卡一区二区三区四区| 久久久久久久久99精品| 亚洲成人黄色小说| 成人福利电影精品一区二区在线观看| 91亚洲精品久久久蜜桃| 欧美一区二区在线视频| 亚洲欧洲成人av每日更新| 免费欧美日韩国产三级电影| 成人a级免费电影| 精品乱人伦小说| 亚洲国产精品视频| 成人免费av在线| 欧美精品一区二区三区一线天视频 | 91精品久久久久久蜜臀| 亚洲影院免费观看| 成人激情动漫在线观看| 久久蜜桃香蕉精品一区二区三区| 亚洲成av人在线观看| 色婷婷国产精品久久包臀 | 成人app网站| 国产精品天美传媒| 国产精品一二三四区| www亚洲一区| 国产一二精品视频| www国产成人免费观看视频 深夜成人网| 亚洲一区二区精品3399| 在线影院国内精品| 亚洲高清视频中文字幕| 欧美性猛交xxxx乱大交退制版 | 欧美偷拍一区二区| 天堂蜜桃91精品| 日韩精品一区二区在线| 国内精品久久久久影院一蜜桃| 26uuu亚洲综合色欧美| 国产精一区二区三区| 国产精品卡一卡二| 欧美日韩性生活| 狠狠v欧美v日韩v亚洲ⅴ| 欧美高清在线视频| 91视频免费观看| 一区二区三区中文字幕精品精品| 不卡的av网站| 亚洲图片自拍偷拍| 欧美mv日韩mv| 成人免费视频一区| 一区二区三区在线视频免费| 欧美理论片在线| 国产精品99久久久久久似苏梦涵| 国产精品毛片a∨一区二区三区| 成人中文字幕在线| 亚洲成人自拍网| 欧美亚洲动漫另类| 麻豆免费精品视频| 亚洲欧洲精品成人久久奇米网| 91视频在线观看免费| 精品无人区卡一卡二卡三乱码免费卡| 久久久国产精品午夜一区ai换脸| 99久久久国产精品| 国产真实乱对白精彩久久| 亚洲男女毛片无遮挡| 欧美mv日韩mv国产| 精品视频1区2区| 97久久超碰精品国产| 国产精品1024久久| 国产精品卡一卡二卡三| 日韩欧美国产三级电影视频| 99久久综合色| 九色porny丨国产精品| 国产精品美女久久久久av爽李琼| 欧美性欧美巨大黑白大战| 国产麻豆日韩欧美久久| 免费在线观看不卡| 亚洲成精国产精品女| 日本一区二区高清| 精品国产乱码久久久久久牛牛| 91福利在线导航| 99精品视频在线观看| 91亚洲大成网污www| 精品一区二区三区影院在线午夜 | 亚洲精品视频一区二区| 国产精品久久久久久久第一福利| 国产亚洲综合性久久久影院| 欧美一卡二卡在线| 欧美三级韩国三级日本三斤| 国产69精品久久99不卡| 国产精品资源站在线| 韩国三级电影一区二区| 成人午夜短视频| 一本色道久久综合亚洲精品按摩 | 91免费版pro下载短视频| 国产精品18久久久久久久久 | 欧美亚洲高清一区| 在线观看91av| 波多野结衣中文字幕一区二区三区| 懂色中文一区二区在线播放| 99re这里只有精品6| 欧美体内she精高潮| 日韩精品一区二区三区三区免费| 欧美xxxxxxxx| 亚洲男同性恋视频| 国产乱理伦片在线观看夜一区| jlzzjlzz亚洲女人18|