gpt4 book ai didi

javascript - 公共(public)文件夹中的 Laravel 图像

转载 作者:行者123 更新时间:2023-11-28 18:22:32 24 4
gpt4 key购买 nike

我正在尝试将 innovastudio contentbuilder.js ( http://innovastudio.com/content-builder.aspx ) 集成到我现有的 laravel 5 项目中,但面临一些问题。JS 工作正常,但我的公共(public)文件夹中缺少一些图片。

我的网站结构是:

edit.blade.php 在这里,我正在加载 contentbuilder.js,特别是片段文件 (snippet.blde.php)。这包含我想要拖放的所有元素

snippets.blade.php 文件位于:public/backend/contentBuilder/assets/

加载snippets.blade.php的代码是:

jQuery(document).ready(function ($) {
$("#contentarea").contentbuilder({
//snippetFile: 'assets/minimalist-basic/snippets.html',
snippetFile: "{{asset('backend/contentBuilder/assets/simple/snippets.blade.php')}}",
snippetOpen: true,
toolbar: 'left',
iconselect: 'assets/ionicons/selecticon.html'
});
});

在我的 snippets.blade.php 中,我用 {{asset('')}} 引用了所有图像这是我的 snippets.blade.php:

    <div data-thumb="{{asset('backend/contentBuilder/assets/simple/thumbnails/theme1_thumb.png')}}">
<div class="container">
<div class="row" style="height: 900px; width: 635px; overflow: hidden; margin: auto;">
<img class="img-noscale" src='{{asset('backend/contentBuilder/assets/simple/images/6.jpg')}}' style="height: 100%; width: 100%; position: relative;" />
</div>
</div>
</div>

我认为这是一个错误:“http://localhost:8000/backend/flyers/10/%7B%7Basset('backend/contentBuilder/assets/simple/thumbnails/theme1_thumb.png')%7D%7D 404(未找到)”

看起来 {{assets('...')}} 没有指向我的公共(public)文件夹!知道为什么吗?

最佳答案

我认为问题出在您提供的 JS 代码片段上。

而不是使用 asset() 定义 snippetFile helper ,

在您的 file.blade.php 中将此片段添加到 <head> 的开头标签。

所以,你的 Blade 看起来像这样

<head>
<script> var base_url = "{{asset('/')}}"; </script>
...
... your script file included here
</head>

在你的 JS 代码中

jQuery(document).ready(function ($) {
$("#contentarea").contentbuilder({
//snippetFile: 'assets/minimalist-basic/snippets.html',
snippetFile: base_url + "backend/contentBuilder/assets/simple/snippets.blade.php",
snippetOpen: true,
toolbar: 'left',
iconselect: 'assets/ionicons/selecticon.html'
});
});

另外,我认为可能还有另一个小问题。

blade.php如果没有通过 view() 返回,则不会被处理通过 Controller 。

因此,在 Controller 中添加一个方法来像这样处理 Blade

function returnThumbnail(Request $request) {
return view('snippet');
}

确保snippet.blade.php位于 resources/views文件夹。

然后像这样添加一条路线

Route::get('/path/to/snippet', 'YourController@returnThumbnail');

并且,在你的 Javascript 中,

jQuery(document).ready(function ($) {
$("#contentarea").contentbuilder(
snippetFile: base_url + "path/to/snippet",
snippetOpen: true,
toolbar: 'left',
iconselect: 'assets/ionicons/selecticon.html'
});

关于javascript - 公共(public)文件夹中的 Laravel 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39704920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com