【问题标题】:Linking CSS/JS in Laravel's Blade Templates在 Laravel 的 Blade 模板中链接 CSS/JS
【发布时间】:2015-10-22 09:01:07
【问题描述】:

我之前注意到,当我向路由添加参数时,这打破了我的看法,因为它似乎改变了指向我的 CSS 和 JS 文件的链接。在尝试让 HTML 包在 Laravel 5.1 中运行数小时后,由于 Composer 问题,我终于放弃并认输了。

我选择只采用简单的路线并返回直接链接它们,但是我现在正在努力让这个工作。

<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/bootstrap.min.css">
<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/metismenu.min.css">
<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/sb-admin-2.css">
<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/font-awesome.min.css">
<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/datatables.bootstrap.css">
<link type="text/css" rel="stylesheet" href="{{ public_path() }}/assets/css/datatables.responsive.css">

而不是链接到本地​​文件,而是将整个字符串附加到我的基本 URL 并尝试链接到明显错误的内容。

当前链接:

http://domain.com/home/roster/laravel/public/assets/css/bootstrap.min.css 

正确链接:

http://domain.com/assets/css/bootstrap.min.css

在我添加路由参数之前,只需链接到“/assets/css/bootstrap.min.css”即可。如果不对整个 URL 进行硬编码,我该怎么做才能使这些链接正常工作?

【问题讨论】:

  • 无论是谁发布了答案,然后编辑然后删除它,编辑效果都很好。如果你想加回来,我会接受的。谢谢!
  • 对不起,我找到了一个新的解决方案,所以我删除了它并尝试添加一个新的:D

标签: javascript php html css laravel-5


【解决方案1】:

试试这个

<link href="<?php echo URL::asset('css/app.css'); ?>" rel="stylesheet" type="text/css">

我相信这会解决你的问题

另一种解决方案:

<link type="text/css" rel="stylesheet" href="{{ URL::to('/') }}/assets/css/bootstrap.min.css">

【讨论】:

  • 如前所述,我花了好几个小时试图让 HTML 包正常工作,但由于作曲家没有任何运气。它已在 Laravel 5.1 中删除,只有一些社区托管包仍然可用,但显然对我不起作用。
  • 查看更新,我认为这两种方法都适合您。
【解决方案2】:

非常罕见。我正在使用 L5.1,与 HTML 包一起看起来不错。只是要记住。需要以下软件包:

"illuminate/html": "~5.0@dev"

然后运行composer update。安装包后,编辑config/app.php添加提供者:

 'Illuminate\Html\HtmlServiceProvider',

还有门面:

'HTML' => 'Illuminate\Html\HtmlFacade'

现在,让我们看看一些显示资产链接的解决方案:

  • 使用 html 外观

    {!! HTML::style('assets/css/bootstrap.min.css') !!}
    
  • 使用原始代码调用url()函数:

    <link type="text/css" rel="stylesheet" href="{{ url('assets/css/bootstrap.min.css') }}">
    
  • 使用原始代码调用URL外观:

    <link type="text/css" rel="stylesheet" href="{{ URL::to('assets/css/bootstrap.min.css') }}">
    

请注意,不要使用public_path(),因为它会返回像/var/www/html/laravel 这样的绝对目录路径,而不是url。

【讨论】:

    猜你喜欢
    • 2014-01-21
    • 2023-04-07
    • 2016-09-11
    • 2019-02-25
    • 2016-12-18
    • 2017-06-06
    • 2014-10-29
    • 2014-06-19
    • 2014-10-04
    相关资源
    最近更新 更多