laravel 语法 '::' at 查看函数含义

标签 laravel laravel-5 laravel-views

<?php
namespace Laravel\Horizon\Http\Controllers;

class HomeController extends Controller
{
      /**
      * Single page application catch-all route.
      * @return \Illuminate\Http\Response
      */
      public function index()
      {
         return view('horizon::app'); // what's the meaning of this 'horizon::app'
      }
}

我在 Laravel-Horizo​​n Controller 中找到了这种语法,任何人都可以解释一下:

view('horizon::app');


'horizon::app'是什么意思?

最佳答案

与其他答案一样,这被称为 view namespaces .它不仅限于包的 View ,您也可以在项目中使用它。

例如,您可能有 admin 和 customer 模块,并希望通过他们自己的文件夹名称来区分他们的 View ,此时您可以使用命名空间声明。例如,您可能有以下文件夹结构:

|- resources
   |- views
      |- admin
         |- index.blade.php 
      |- customer
         |- index.blade.php  

然后您可以在 AppServiceProvider.php 中注册指向该特定文件夹路径的自己的命名空间。 :
app('view')->addNamespace('admin', base_path() . '/resources/views/admin');

// or

app('view')->addNamespace('customer', base_path() . '/resources/views/customer');

稍后,在 Controller 的方法中,您可以使用以下方法引用它:
return view("admin::index"); 

// or

return view("customer::index");

关于laravel 语法 '::' at 查看函数含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50146408/

相关文章:

laravel - Lumen 5.2+ 中的 View

php - Laravel 迁移 - 列已存在

Laravel 产量属性

php - 使用 Laravel 数据未保存在数据库中

php - Laravel Eloquent (PDO) : Check that Transaction is Active

javascript - 在 laravel 5.1.2 中包含外部 js 文件

php - Laravel CRUD 销毁方法不起作用。无法将数据从 View 传递到 Controller 以删除数据

jquery - 使用 jquery 显示动态内容时出现问题?

php - Laravel leftJoin 错误从空值创建默认对象