yii2-framework/inertia-vue
最新稳定版本:0.1.0
Composer 安装命令:
composer require yii2-framework/inertia-vue
包简介
Vue adapter helpers for yii2.
README 文档
README
Inertia Vue
Vue adapter helpers for yii2-extensions/inertia
Vue-friendly root view and Vite asset integration for Yii2 Inertia applications
Features
Overview
yii2-extensions/inertia-vue is a thin PHP-side adapter package for building Vue-based Inertia applications on top of
yii2-extensions/inertia.
This package does not install npm dependencies for you. Instead, it provides:
- a Vue-specific bootstrap class for Yii2;
- a default root view that outputs Vite tags plus the initial Inertia page payload;
- a Vite helper component for development-server and manifest-driven production assets;
- documentation and conventions for the application-owned Vue client entrypoint.
Installation
composer require yii2-extensions/inertia-vue:^0.1
Register the Vue bootstrap class:
return [ 'bootstrap' => [ \yii\inertia\vue\Bootstrap::class, ], 'components' => [ 'inertiaVue' => [ 'class' => \yii\inertia\Vite::class, 'baseUrl' => '@web/build', 'devMode' => YII_ENV_DEV, 'devServerUrl' => 'http://localhost:5173', 'entrypoints' => [ 'resources/js/app.js', ], 'manifestPath' => '@webroot/build/.vite/manifest.json', ], ], ];
Use only yii\inertia\vue\Bootstrap::class in the bootstrap list. It already delegates the base
yii2-extensions/inertia bootstrap.
Vue client entrypoint
Install the client-side dependencies in your application project:
npm install vue @vitejs/plugin-vue @inertiajs/vue3 vite
Then create your client entrypoint, for example resources/js/app.js:
import { createApp, h } from "vue"; import { createInertiaApp } from "@inertiajs/vue3"; createInertiaApp({ resolve: (name) => { const pages = import.meta.glob("./Pages/**/*.vue", { eager: true }); return pages[`./Pages/${name}.vue`]; }, setup({ el, App, props, plugin }) { createApp({ render: () => h(App, props) }) .use(plugin) .mount(el); }, });
Development mode
When devMode is true, the Vite helper bypasses the production manifest and emits @vite/client plus each
entrypoints script pointing at devServerUrl. Vue HMR is carried natively by @vite/client together with
@vitejs/plugin-vue; no extra preamble is needed.
Run the Vite dev server and the Yii2 application side by side:
# Terminal 1 — Vite dev server npm run dev # Terminal 2 — Yii2 in dev mode YII_ENV=dev ./yii serve
See Development Notes for the full HMR workflow, CORS notes, and troubleshooting.
Production asset integration
This package expects a Vite manifest file generated with build.manifest = true. In production it will render:
- style sheet tags for the entrypoint chunk and its imported chunks;
- module entry scripts for each entrypoint;
- optional
modulepreloadtags for imported JavaScript chunks.
Documentation
For detailed configuration options and advanced usage.
- 📚 Installation Guide
- ⚙️ Configuration Reference
- 💡 Usage Examples
- 🧪 Testing Guide
- 🛠️ Development Notes
Package information
Quality code
License
统计信息
- 总下载量: 1.35k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 8
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2026-04-03