问题标签 [laravel-facade]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Laravel 门面是依赖项吗?
我读过一个类不应该有太多的依赖关系。在一本书中,它指出 4 个依赖项可能表明类可能做得太多。
假设我编写了一个使用 10 个依赖项的类:6 个类和 4 个外观。我应该只关心这 6 个类并将它们拆分,还是也应该关心 4 个外观?
如果有人想知道我是如何得到这么多外墙的:
这些都是经常需要的。我听说过一个问题 - 为什么我需要应用程序?调用函数:
有人说门面不是依赖项,也在这里:
关于这个问题有很多不同的观点(类什么时候依赖某些东西),但是类依赖通常被视为传递给构造函数的内容,即类被实例化为对象所需的内容。
我想我可以自己从一个类创建一个外观,我会以这种方式减少依赖关系。但这有意义吗?
例如这篇文章指出——我们不应该使用门面:
http://taylorotwell.com/response-dont-use-facades/
从它我明白门面不会那么糟糕,但不好的是班级开始做太多事情。
我说的是 Laravel 4,但可能同样适用于 Laravel 5 或其他使用相同的框架。我刚刚听说 Laravel 5 使用的门面没有 Laravel 4 那么多。
更新:
我也想得到这样的论据,以便在讨论这个话题时可以与其他人一起使用。就像我说的那样-互联网上的某个人(即使具有良好的stackoverflow配置文件)对我说外观很糟糕,它们就像全局变量,它们会立即告诉您-这与全局不同,它们是可模拟的,您不应该关心。他们也可能会说,这是那些家伙的意见。所以我想要一个强项来保护自己。所以我可以把它解释为 2*2 = 4 并且没有人会不同意。或者至少接近那个。
更新:
如果这些是依赖项,并且我希望一个类最多有 4 个依赖项,我只有一个想法——创建分组类,就像类树一样。但我最终得到了许多用于小功能的类。就像这 10 个依赖项一样,如果我想拥有最多 4 个依赖项,我想我需要 3-5 个类而不是 1 个。所以如果我有大项目,你将拥有数百万个小类。那它看起来不会更复杂吗?就像我看到的 Laravel 有很多类,而 CodeIgniter 的类少得多,并且看起来更易于阅读/遵循、扩展。
php - Laravel 5 图像类冲突
我有一个图像模型,但是在我开始使用干预图像来调整图像大小之后,我遇到了类冲突问题,因为它们都有类名 Image。
我试图更改 app.php 中的别名,以便干预外观名称是 imageIntervention 而不是 image:
但是如何在我的 imageController 中使用这个外观?
谢谢 - 安德烈亚斯
php - 未找到 Laravel 5 类“Illuminate\Support\Facades\FormFacade”
好吧,这让我发疯了。我正在尝试在 Laravel 5 中包含 FormFacade 的表单功能,但我不断收到此错误:
我会写下我所做的:
- laravel 5 安装后,我在 laravel 中添加了FormFacade。
使用以下行更新了 app.php 文件:
/li>然后,我检查了我的 composer.json 文件:
/li>作曲家更新了吗
- 检查我是否真的下载了文件
所有这一切都完成了,但我仍然找不到问题所在。我寻求帮助,但似乎没有任何效果。
搜索努力:
仍然没有运气。我错过了什么吗?
PS:我在Windows上运行。
php - Laravel 输入外观与请求外观
基于Input Facade API和Request Facade API,Input::get() 方法似乎是唯一的区别。我在这里错过了什么吗?
我知道验证可以应用于请求,但我不确定输入门面是否也是如此。
php - 如何为独立的 Illuminate IoC 容器创建 Illuminate/Support/Facade/App 外观
在我的独立(没有 Laravel)项目中,我想使用 Illuminate IoC 容器。我也想通过组件App
提供的外观访问应用程序容器。illuminate/support
我安装了两个组件(v5.0.28)。这是我的(简化的)代码:
不幸的是,尝试绑定某些东西会导致:
这是该行的代码
、和的$instance
实例在哪里。问题是它不是一个实例,并且类不支持在其静态属性上调用任意函数。Illuminate\Support\Facades\App
$method == 'bind'
$args[0] == 'w'
$args[1] == 'Widget'
$instance
Illuminate\Container\Container
Illuminate\Support\Facades\App
$app
为了使它工作,我添加了以下功能Illuminate\Support\Facades\App
:
但是编辑外部组件肯定不是正确的做法!!!肯定有人遇到过这种情况!
所以问题是:这样做的正确方法是什么?
php - 有没有办法让 netbeans 导航到 Laravel 5 Facade 类?
我正在使用 Netbeans 处理 Laravel 5 应用程序,Laravel 5 鼓励您为某些类定义别名(称为 Facades)。然后,您可以在您的类中扩展这些别名。
但是,Netbeans IDE 不允许您在这些类上单击(ctrl+单击类名),因为它只知道它们的原始名称。有没有办法使这项工作?
例子:
应用程序.php
程序.php
在此示例中,netbeans 无法从 Procedure.php 导航到 \Eloquent 类。
php - Laravel - 无法使 PHP-Vars-To-Js-Transformer 包工作
我是 Laravel 5 的新手,我正在尝试设置PHP-Vars-To-Js-Transformer 。问题是,我无法在控制器中使用JavaScript外观。找不到这个类。
我的控制器:
我的 // app/config/app.php
我还运行了命令php artisan vendor:publish
和composer install
. 我不知道,如果我错过了一些特别的东西.. 谢谢
laravel-5 - Laravel5,我喜欢将 Event::listen() 放在一个单独的文件中,但是 Event 门面是未知的
我想Event::listen()
在一个单独的文件中有一组 s,这就是我到目前为止所做的。
引导/自动加载.php
引导程序/listeners.php
错误是找不到类事件
我的要求的正确方法是什么?我不确定创建一个新的 .php 文件并从bootstrap/autoload.php中要求它是否适合此要求。
请帮忙。谢谢
php - Laravel5 外观未解决
我已经在 中注册了一个服务提供者config/app.php
,它正在被加载和执行。
在服务提供者的 register() 方法中:
接下来,我创建了这样的外观
接下来,我添加了外观实现
最后,我添加了别名config/app.php
当我做
我得到以下
怎么了?
编辑
Foo\Facades\Timer
正在正确加载。
此外,Foo\Utils\Timer
正在解决,因为我能够做到
没有任何错误。
php - laravel-ide-helper 的问题
我正在浏览 Laravel 5 Fundamentals Laracasts 视频集,但在我的 IDE(Phpstorm 8)中使用 Facades 时遇到了一些困难。我有一个使用 Eloquent 外观的模型use Illuminate\Database\Eloquent\Model;
我需要 laravel-ide-helper composer require barryvdh/laravel-ide-helper
,将服务提供者添加到 providers 数组'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider',
中,重新生成文档并重新启动我的 IDE,但没有成功。
我的控制器中有一个模型声明,$article = Article::findOrFail($id);
但该findOrFail
方法被突出显示并标记为在类 App\Article 中找不到方法“findOrFail”。
我是 Laravel 和 Facades 概念的新手,但我迷路了,无法为我的问题找到现有的答案。