成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Laravel 配置雙模板

TZLLOG / 2029人閱讀

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

在開發(fā)過程中, 不時會遇到某些項(xiàng)目需要使用兩套模板

如PC端和Mobile端使用不同的模板文件, 以達(dá)到最佳的用戶體驗(yàn)

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

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

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

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

執(zhí)行后會在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/");
        }
        // 獲取視圖查找器實(shí)例
        $view = app("view")->getFinder();
        // 重新定義視圖目錄
        $view->prependLocation($path);
        // 返回請求
        return $next($request);
    }
}
4. 最后注冊中間件

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

如注冊全局中間件:

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

搞定, 就可以根據(jù)不同的設(shè)備加載不同的模板文件了

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

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

如從PC設(shè)備打開網(wǎng)頁: 加載 /resources/views/pc/registration/index.blade.php 模板

如從移動設(shè)備打開網(wǎng)頁: 加載 /resources/views/mobile/registration/index.blade.php 模板

原文: Laravel 配置雙模板

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/30918.html

相關(guān)文章

  • Laravel 5.8 前瞻

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

    tianhang 評論0 收藏0
  • Laravel之郵件發(fā)送

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

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

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

    Vultr 評論0 收藏0
  • Laravel SMS 短信發(fā)送包

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

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

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

    tinna 評論0 收藏0

發(fā)表評論

0條評論

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