【问题标题】:what does it mean in blade @extends('some::thing')在刀片中是什么意思 @extends('some::thing')
【发布时间】:2017-01-12 21:14:19
【问题描述】:

今天我已经安装了jeroennoten/laravel-adminlte,在完成所有安装命令之后,我创建了一个视图并只写了一行

@extends('adminlte::page')

它工作正常,但我不明白它是如何工作的?特别是这个:: 符号?我检查了 laravel 文档,但找不到任何东西。

请帮助我解释它或提供一些文章/教程链接,我可以从中了解更多信息。

【问题讨论】:

  • 这是一个提示路径。我认为它是用来从服务提供商那里加载视图的。

标签: laravel laravel-5.2 laravel-5.3 laravel-blade


【解决方案1】:

adminlte 是包的名称,在 Laravel 中用于 viewsconfigs 作为命名空间,以避免与其他包冲突。

在第 51 行的 ServiceProvider 类中定义。

通过在你的刀片文件中调用它:

@extends('adminlte::page')

你告诉 Laravel,你想扩展 page.blade.php 文件。

如果您调用@extends('page'),而没有adminlte::,它将在您的resources/views 目录中查找page.blade.php

您不会在 Laravel 的 Blade 文档部分中看到有关此的信息,因为它是特定于 Laravel 包的。您可以通过here了解更多信息。

【讨论】:

    【解决方案2】:
    :: 
    

    symbol 是类中静态函数或静态属性的调用,例如,如果您这样定义一个类:

    class Foo{
        public static $a = 1;
        public static function test(){}; 
    }
    

    你可以使用Foo::$a获取$a的值,并使用Foo::test()调用函数test()。

    【讨论】:

    • 你的解释可以,但事实并非如此。
    猜你喜欢
    • 1970-01-01
    • 2015-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    • 2013-01-02
    • 2012-07-03
    • 1970-01-01
    相关资源
    最近更新 更多