當我在公用檔案夾中添加模板時,這很有效,但我要求的是正確的做事方式。
我創建了一個新的 laravel 專案,我想使用 Adminlte 3 作為模板,所以我運行了我在檔案中找到的這個命令:
composer require "almasaeed2010/adminlte=~3.1"
回應(我認為最后兩行可能有用)
./composer.json has been updated
Running composer update almasaeed2010/adminlte
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
- Locking almasaeed2010/adminlte (v3.1.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
- Downloading almasaeed2010/adminlte (v3.1.0)
- Installing almasaeed2010/adminlte (v3.1.0): Extracting archive
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
77 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
我發現我的供應商檔案夾中添加了一個新檔案夾。
一切都正確下載,所以我嘗試創建一個包含儀表板所有重復元素的母版頁面,但是我使用的鏈接不是動態的,所以我不確定如果視圖位于不同的目錄級別是否會導致問題。例如 :
這是指向 css 的 Admin lte 3 鏈接:
<link rel="stylesheet" href="../../dist/css/adminlte.min.css">
我是如何稱呼它的:
<link rel="stylesheet" href="{{ require('C:\Users\Yasser-Ch\Desktop\LaravelProject\gestionDivers\vendor\almasaeed2010\adminlte\dist\css\adminlte.min.css') }}">
這使得頁面看起來像 css 檔案,所以試著把它放在里面resources\css\app.css
,當然它沒有作業,因為 css 不是 .blad.php ,所以我想也許作曲家(因為在檔案中準確地說:
vendor 目錄包含您的 Composer 依賴項。
) 或其他東西可以解釋它并只從“vendor\almasaeed2010”(一般模板)中放入我需要的東西,并將其放入 2 個檔案中,1 個用于 css,1 個用于 js ...我做了一些研究,我發現 mix ......
所以我嘗試了這個:
{{ mix.postCss('\vendor\almasaeed2010\adminlte\dist\css\adminlte.min.css', 'public/css') }}
<link rel="stylesheet" href="adminlte.min.css">
然后我運行這些命令:
npm install // to download mix that is by default already required in the package.json
npm run dev // and here I expect mix to start mixing
我檢查 public/css 只添加了 app.css 。當我重新運行網站時,php artisan serve我收到一個錯誤,說 mix is undefined 。
我的意思是混合期間沒有導致錯誤npm run dev。如果它在啟動服務器之前完成混合作業,我會洗掉它。如何鏈接供應商的 css/js?我應該在公用檔案夾中發布所有內容嗎?因為我認為他們將模板放在供應商檔案夾中的事實意味著它不應該直接在公共目錄中。
uj5u.com熱心網友回復:
您可以為此使用 webpack,檢查檔案webpack.mix.js添加或搜索行,如下所示
// webpack.mix.js
mix.sass('resources/sass/app.scss', 'public/css')
// in 'app.scss
// import all necessary css files
@import 'vendor\almasaeed2010\adminlte\dist\css\adminlte.min.css'
運行npm install如果從來沒有,然后運行npm run dev或npm run prod。它將app.css在public/css
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/406384.html
標籤:
