首页 > 解决方案 > 如何在 laravel 包中给出资产路径?

问题描述

我已经开发了 laravel 包。有视图示例在这里

索引刀片


    <!DOCTYPE html>
    <html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
    
    <head>
        <meta charset="utf-8">
    
        <!-- CSRF Token -->
        <meta name="csrf-token" content="{{ csrf_token() }}">
    
        <title>{{ config('app.name', 'ColdxLogistics') }} - @yield('title')</title>
    
        <meta name="description" content="Login page example">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    
        <!--end::Layout Skins -->
        <link rel="shortcut icon" href="{{asset('media/logos/favicon.ico')}}" /> 
      
    </head>
    
    
    <!--begin::Page Scripts(used by this page) -->
    <script src="{{asset('js/pages/crud/forms/editors/tinymce.js')}}" type="text/javascript"></script>
    
    <script src="{{asset('js/main.js')}}" type="text/javascript"></script>
    
    
    @yield('scripts')
    
    
    </body>
    
    </html>

你可以在这里有很多 javascript 和 css 文件。我想为可以加载这些文件的包创建资产文件夹。像 laravel 一样有公共目录。

我应该使用哪种方法?

标签: phplaravellaravel-5package

解决方案


您没有链接到您的包资产文件夹,您需要像在文档中一样发布资产,然后正常使用链接到它们asset()

在您的包裹服务提供商中,您需要添加:

/**
 * Bootstrap any application services.
 *
 * @return void
 */
public function boot()
{
    $this->publishes([
        __DIR__.'/path/to/assets' => public_path('vendor/yourpackagename'),
    ], 'public');
}

推荐阅读