이 글은 Laravel에서 이중 템플릿을 구성하는 방법(코드 예제)을 소개합니다. 참고할 만한 가치가 있으므로 도움이 필요한 친구들에게 도움이 되길 바랍니다.
개발 과정에서 때때로 두 가지 템플릿 세트를 사용해야 하는 특정 프로젝트에 직면할 수 있습니다.
예를 들어 PC 측과 모바일 측에서는 최상의 사용자 경험을 달성하기 위해 서로 다른 템플릿 파일을 사용합니다
What 이런 상황이 발생하면 어떻게 해야 할까요? Laravel의 템플릿 파일을 구성하는 것은 어떨까요?
whichbrowser/parser
설치 포털:whichBrowser/Parser-PHPwhichbrowser/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 WhichBrowser\Parser(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); } }
在app/Http/Kernel.php
PC 또는 모바일 장치를 결정하는 데 사용됩니다. 요청 시 다른 템플릿 로드
protected $middleware = [ \App\Http\Middleware\Template::class, ];
2. artisan 명령을 사용하여 새 미들웨어(미들웨어)를 생성합니다.
실행 후 미들웨어 파일은 app/Http/Middleware 디렉토리에 생성됩니다
return view('registration.index', $data);
3. Template.php 파일을 편집합니다
rrreee4. 마지막으로 미들웨어를 등록합니다
app/Http/에서 Kernel.php
클래스에 주문형 미들웨어를 등록하세요예를 들어 전역 미들웨어를 등록하세요:rrreee
그 후에는 각기 다른 템플릿 파일을 로드할 수 있습니다. devices컨트롤에서 이렇게 하세요. 다양한 기기에 따라 다양한 템플릿이 로드됩니다🎜rrreee🎜예를 들어 PC 기기에서 웹페이지를 열 때: /resources/views/pc/registration/index.blade.php 템플릿 로드🎜 🎜예를 들어 모바일 장치에서 웹페이지를 열 때: Load /resources/views /mobile/registration/index.blade.php template🎜🎜🎜위 내용은 Laravel에서 이중 템플릿을 구성하는 방법 소개(코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!