laravel 配置双模板引擎

有时候我们可能有这种需求,pc 和 mobile 端显示的页面不一样,这个时候,我们就需要判断设备类型;

****我们用  composer require whichbrowser/parser  这个包实现

直接上代码

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); } }
 

然后后注册中间件

return view('registration.index', $data);//这里就不写到资源文件的跟目录了

/resources/views/pc/registration/index.blade.php 模板

猜你喜欢

转载自www.cnblogs.com/sweetsunnyflower/p/10509392.html