当前位置: 首页 > 知识库问答 >
问题:

字体和图像源与Laravel混合在子文件夹内

百里疏珂
2023-03-14

im使用Larverl 5.5和Laravel Mix 1.0。我的所有图像都存储在public/images中,字体存储在public/fonts中。问题是如果我的Laravel项目是在像htdocs/demo/Laravel这样的子文件夹中,那么所有的图像和字体url都无法在scss文件中找到。例如:

App.SCSS

// Bootstrap
@import "~bootstrap-sass/assets/stylesheets/bootstrap";

// Font
@import "components/fonts";

// Font Awesome
@import "~font-awesome/scss/font-awesome.scss";

wrapper {
  .banner {
    background: url('/images/banner.png') no-repeat;
    background-size: cover;
    }
}

fonts.scss(字体/组件文件夹内)

@font-face {
  font-family: MyFont;
  font-weight: normal;
  font-style: normal;
  src: url("/fonts/MyFont.eot");
  src: url("/fonts/MyFont.ttf") format("truetype"),
       url("/fonts/MyFont.woff") format("woff");
}

我也安装了字体awesome和boostrap由npm和遭受同样的问题与字体。

这是我的webpack.mix.js

let mix = require('laravel-mix');
mix.js('resources/assets/js/app.js', 'public/js')
   .sass('resources/assets/sass/app.scss', 'public/css');

更新1:字体问题通过将其添加到webpack.mix.js来解决:

mix.setPublicPath('public/');
mix.setResourceRoot('../');
mix.js('resources/assets/js/app.js', 'public/js')
   .sass('resources/assets/sass/app.scss', 'public/css');

现在剩下的问题是scss文件上的背景图像。在运行“npm run dev”之后,它仍然指向app.css中的“/images/banner.png”而不是“../images/banner.png”

更新2:我错了,字体的问题仍然存在,只有font awesome得到了正确的路径“../fonts”,而MyFont仍然指向“/fonts”

共有1个答案

司寇嘉茂
2023-03-14

打开app文件夹中的webpack.mix.js文件并添加以下行:

mix.setPublicPath('public');
mix.setResourceRoot('../');

然后运行:npm run dev

会管用的。

 类似资料:
  • 我有一个像这样的文件夹 应用程序 供应商 引导程序 公开的 文件夹 img 当我从url访问时http://example.com/img/img.png它工作,但当我喜欢访问http://example.com/img/我得到禁止403,我需要的是重定向或显示该页面没有找到我的。htaccess看起来像这样。 选项-多视图选项-索引重写引擎打开

  • 出于某种原因,我一直在GradleJavaFX项目中获得NPE。 我的文件夹结构非常基本。我在文件夹中有一个包含java文件的包。我的资源也在文件夹中。当我尝试加载它给了我一个NPE。 这是一个助手类。 从我调用:

  • 我试图通过Laravel5.4中的Mix(以前是Elixer)(使用https://Laravel.com/docs/5.4/Mix)设置一个SASS到CSS编译器。一切工作正常,它可以编译,我可以通过npm设置一个观察器,但是可以通过views/layout/app.blade.php文件引用它,比如: 不管用。在我的浏览器中,它当然显示为: 这是一条错误的道路。它应该引用http://loca

  • 我有一个问题,不知道如何修复它。我有这样的消息: 这是我的信息:tongue_out::眨眼:dsdangrydsangryhoanghamobile.comdsd:眨眼:这是表情符号和更多的文字…… 它将像下面的图像显示:眨眼:,:舌头_出:和其他表情符号是从链接:https://filev4.subiz.com/wink.png.所有的图像是一个字符串,现在我必须从url和文本解析表情符号显示

  • 问题内容: 我正在编写一个脚本,该脚本记录来自另一个程序的错误,并在遇到错误时从中断的地方重新启动该程序。不管出于什么原因,该程序的开发人员都没有必要默认将此功能放入其程序中。 无论如何,程序都会获取一个输入文件,对其进行解析,然后创建一个输出文件。输入文件采用特定格式: 当程序引发错误时,它会为您提供跟踪错误所需的参考信息- 即UI,哪个部分(标题或摘要)以及相对于标题或摘要开头的行号。我想使用

  • 这是我的服务方法 这是我的控制器方法 当我使用我的服务器时,我会得到HTTP状态500类路径资源[output.png]无法解析为URL,因为它不存在