国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Laravel 配置雙模板

TZLLOG / 2025人閱讀

摘要:在開發過程中不時會遇到某些項目需要使用兩套模板如端和端使用不同的模板文件以達到最佳的用戶體驗遇到這種情況我們應該如何配置的模板文件呢安裝傳送門用于判斷或設備按需加載不同的模板使用命令新建一個中間件執行后會在目錄生成中間件文件編輯文件如果是

在開發過程中, 不時會遇到某些項目需要使用兩套模板

如PC端和Mobile端使用不同的模板文件, 以達到最佳的用戶體驗

遇到這種情況我們應該如何配置Laravel的模板文件呢?

1. 安裝whichbrowser/parser 傳送門: WhichBrowser/Parser-PHP

用于判斷PC或Mobile設備, 按需加載不同的模板

composer require whichbrowser/parser
2. 使用artisan命令新建一個Middleware(中間件)

執行后會在app/Http/Middleware目錄生成中間件文件

php artisan make:middleware Template
3. 編輯Template.php文件
class Template
{
    protected $except = [];

    public function handle($request, Closure $next)
    {
        $result = new WhichBrowserParser(getallheaders());
        // 如果是桌面類型, 返回true
        $isDesktop = $result->isType("desktop");
        if ($isDesktop) {
            // 加載pc端的模板文件
            $path = resource_path("views/pc/");
        } else {
            // 加載mobile端的模板文件
            $path = resource_path("views/mobile/");
        }
        // 獲取視圖查找器實例
        $view = app("view")->getFinder();
        // 重新定義視圖目錄
        $view->prependLocation($path);
        // 返回請求
        return $next($request);
    }
}
4. 最后注冊中間件

app/Http/Kernel.php類中 按需注冊中間件

如注冊全局中間件:

protected $middleware = [
    AppHttpMiddlewareTemplate::class,
];

搞定, 就可以根據不同的設備加載不同的模板文件了

在控制中只需這樣, 就可以根據不同的設備來加載不同的模板了

return view("registration.index", $data);

如從PC設備打開網頁: 加載 /resources/views/pc/registration/index.blade.php 模板

如從移動設備打開網頁: 加載 /resources/views/mobile/registration/index.blade.php 模板

原文: Laravel 配置雙模板

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/30918.html

相關文章

  • Laravel 5.8 前瞻

    摘要:發布于年月,從那時起大約每六個月會發布一次的新版本。將會支持相對較新的來管理項目中的環境文件。棄用和輔助函數所有的和全局輔助函數都已棄用,將在中刪除。將返回更干凈的相同值。和通知和通知已從主項目中刪除,并提取到第三方軟件包中。 showImg(https://segmentfault.com/img/remote/1460000018269419?w=585&h=400); 無論是從零...

    tianhang 評論0 收藏0
  • Laravel之郵件發送

    Laravel為我們提供了很便捷的郵件服務,只需要簡單的配置就能使用。 -->另一篇Laravel隊列發送郵件 它的配置文件在config/mail.php,下面我們來看看它的配置文件 這里的 driver 指的是使用的驅動,默認使用的是smtp driver => env(MAIL_DRIVER, smtp), 發送郵件的主機地址 host => env(MAIL_HOST, smt...

    B0B0 評論0 收藏0
  • Deployer init命令

    摘要:簡介安裝完成后輸入開始初始化,生成默認的配置文件命令的實現在文件中目錄則包含了初始化相關的模板命令類類繼承了的類,實現為一個命令行的命令構造函數構造函數主要初始化了的和兩個變量是一個包含了多個模板的初始化器具體實現就是下面將要分析的是初始化 0 簡介 Deployer安裝完成后輸入dep init開始初始化,生成默認的配置文件deploy.phpinit命令的實現在srcConsole...

    Vultr 評論0 收藏0
  • Laravel SMS 短信發送包

    摘要:支持短信驗證碼未驗證時,用戶再次請求驗證碼,在有效分鐘內驗證碼保持一致。集成短信發送路由,支持和發送方式。有效期為分鐘,請盡快驗證。 Laravel Sms Laravel 貼合實際需求同時滿足多種通道的短信發送組件 showImg(https://segmentfault.com/img/remote/1460000013101233);showImg(https://segment...

    Seay 評論0 收藏0
  • Laravel 和 Spring Boot 兩個框架比較創業篇(一:開發效率)

    摘要:小紅要以最低成本最快速度推出版本,投放市場,收集反饋,持續迭代。總結在技能掌握充足的情況下,個人感覺開發效率要略高于。 我個人是比較不喜歡去正兒八經的比較兩個框架的,這樣沒有意義,不過欲善其事先利其器! 技術是相通的,但是在某個特定的領域的某個階段肯定有相對最適合的一個工具! 這里比較不是從技術角度比較,而是從公司技術選型考慮的,特別是初創的互聯網創業公司。沒辦法,誰讓互聯網公司離不開...

    tinna 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<