【问题标题】:Accessing css with asset() in laravel package在 laravel 包中使用 assets() 访问 css
【发布时间】:2021-10-08 20:37:40
【问题描述】:

Eghad,缺少 laravel 文档。因此,如果您想在包中专门为包视图添加 css,并且您想知道如何发布这些资产,那么在使用asset() 助手调用它们时如何指定路径?

例如:

我有一个包含资源/资产/css/mystyles.css 的包 我告诉服务提供商在“vendor/myorg/mypackage”下发布我的资产

// Publishing assets.
$this->publishes([
    __DIR__.'/../resources/assets' => public_path('vendor/myorg/mypackage'),
], 'mypackage.assets');

我的包中有一个视图,我希望它在其中显示该 css,我应该在asset() 调用中放入什么? 'css/mystyles.css'? '供应商/myorg/mypackage/css/mystyles.css'?更复杂的事情?

<link href="{{ asset('????/css/mystyles.css') }}" rel="stylesheet" />

【问题讨论】:

  • 我认为应该是,&lt;link href="{{ asset('vendor/myorg/mypackage/css/mystyles.css') }}" rel="stylesheet" /&gt;
  • 我不断从眼角看到我对 css 工作表名称“mystyles”的临时替换,并认为它是“神秘样式”

标签: php laravel laravel-package


【解决方案1】:

阅读here

您的软件包用户必须发布您的资产。它们将被放置在(在您的情况下)vendor/myorg/mypackage - 您在提供者处指定该补丁。

发布后您可以通过asset('vendor/myorg/mypackage/css/mystyles.css')访问资产

【讨论】:

  • 谢谢,我在发布后进行了一些修改,但仍然不确定这是最佳实践方法。
【解决方案2】:

helper function asset() 指向 Laravel 目录中的 public 文件夹,您可以将样式表文件移动到 public 目录并通过 helper asset() 访问您想要的任何样式文件

【讨论】:

    猜你喜欢
    • 2017-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-09-29
    • 2013-02-03
    • 2013-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多