klongchu/laravel-nuxt

NuxtJS 框架集成到 Laravel

1.0.2 2023-09-24 12:52 UTC

This package is auto-updated.

Last update: 2024-09-24 14:51:43 UTC


README

此包便于将使用 NuxtJS 构建的 SPA 集成到现有的 Laravel 项目中。

安装

composer require m2s/laravel-nuxt

安装完成后,您可以发布配置。

php artisan vendor:publish --provider="M2S\LaravelNuxt\LaravelNuxtServiceProvider"

设置

该包提供了一个命令,用于轻松安装和集成 Nuxt 项目。

$ php artisan nuxt:install -h
Description:
  Create a new nuxt project or setup integration of an existing one

Usage:
  nuxt:install [options] [--] [<source>]

Arguments:
  source                 Root folder of the nuxt application [default: "resources/nuxt"]

Options:
  -y, --yarn             Use yarn package manager
  -t, --typescript       Use typescript runtime
  -c, --cache[=CACHE]    Optional caching endpoint (e.g. /api/cache)
  -p, --prefix[=PREFIX]  Prefix for the nuxt application (will use value from `config('nuxt.prefix')` if omitted)
      --no-export        Do not export env variable on build
  -h, --help             Display this help message
  -q, --quiet            Do not output any message
  -V, --version          Display this application version
      --ansi             Force ANSI output
      --no-ansi          Disable ANSI output
  -n, --no-interaction   Do not ask any interactive question
      --env[=ENV]        The environment the command should run under
  -v|vv|vvv, --verbose   Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

自动路由

默认情况下,该包会自动添加 nuxt 页面的路由。

Nuxt::route('/{path?}')->where('path', '.*')->name('nuxt');

此路由命名为 'nuxt',并可用于 Laravel 的路由助手。

route('nuxt');

// or

route('nuxt', ['path' => 'some/deep/path']);

您可以通过 config/nuxt.php 中的 'routing' 设置来禁用/启用自动路由。

手动路由

该包提供了一个简单的门面,可能用于注册 nuxt 路由。
路由将自动使用配置的路径作为前缀,并附加一个控制器,该控制器处理内部重定向到 nuxt。
该方法返回一个 Illuminate\Routing\Route 实例,并可按常规使用。

routes/web.php

use M2S\LaravelNuxt\Facades\Nuxt;

Nuxt::route('example/route')->name('nuxt.example');