使用環境
Name | Version |
---|---|
PHP | 8.2.13 |
CodeIgniter | 4.4.2 |
Vite | 5.0.7 |
Vite 5
Vite 5
のデフォルトだと、manifest.json
が.vite
ディレクトリに格納されるようになりました。
build.manifest
欄を、下記のように変更すると、今まで通り使えそうです。
Laravel Vite Plugin v0.8.1
も同じように設定すると、暫定的にVite 5
で使えたりします。*1
Modules/Admin/vite.config.js
import { defineConfig } from 'vite'; import vue from '@vitejs/plugin-vue'; import path from 'node:path'; const currentPath = path.resolve(); export default defineConfig({ build: { outDir: '../../public/build/admin', emptyOutDir: true, manifest: 'manifest.json', rollupOptions: { input: path.join(currentPath, 'Resources/js/main.js'), }, }, plugins: [ vue(), ], });
view_cell
CodeIgniter 4
には、view_cell
があるので、試してみました。
App\Cells\Vite::script
- 指定した場所で生成された
manifect.json
を読みこむ css
欄の文字を取り出し、Helper
のlink_tag
で、link
タグを出力する*2file
欄の文字を取り出し、Helper
のscript_tag
で、script
タグを出力する
この方法で良いのかどうか、現時点では、わからないので、ソースコードは掲載しません。
Vite 4
から、Vite 5
にしましたが、変更する必要はなさそうです。
Modules/Admin/Views/index.php
Laravel
フレームワーク内の@vite
ディレクティブぽい感じにしました。
下記の一行を<head>
タグ内に入れます。
<?= view_cell('Vite::script', ['Resources/js/main.js', 'build/admin']); ?>