antlur/capo-starter

此包已被废弃,不再维护。作者建议使用 capocode/starter 包代替。
关于此包最新版本(v0.6)的许可证信息不可用。

安装: 59

依赖项: 0

建议者: 0

安全: 0

星标: 4

关注者: 2

分支: 0

开放问题: 0

语言:JavaScript

v0.6 2023-07-31 07:31 UTC

This package is auto-updated.

Last update: 2023-08-08 14:39:41 UTC


README

正在施工中,可能会随时更改。

Capo 的目标是利用 Laravel 的强大功能,同时结合现代 JavaScript 框架(如 Next.js 或 Nuxt.js)的简单性,轻松构建网站。

Capo 可以作为标准服务器端应用程序或作为静态网站生成器运行。

入门指南

composer create-project capocode/starter [name]

npm i

npm run dev

composer run build

路由

路由可以通过两种方式实现

  1. 您可以使用 routes.php 文件来定义路由和控制器 Laravel 文档
  2. 您可以使用 pages 目录来定义路由和页面,使用 Laravel Folio
/pages
├── index.blade.php
├── about.blade.php
├── about (nested index also works)
│   └── index.blade.php

静态网站生成时的动态数据

在生成静态网站时,您可以使用 ExportPaths 属性来定义应生成哪些路由。这在您需要为动态数据生成静态页面时非常有用。例如,如果您有一个博客,并希望为每篇博客文章生成静态页面,您可以使用 ExportPaths 属性来定义应生成哪些路由。其余的逻辑可以像处理普通 Laravel 应用程序一样处理。

// routes.php
Route::get('/blog/{post}', [BlogController::class, 'show']);

// app/Http/Controllers/BlogController.php
use Capo\Attributes\ExportPaths;

class BlogController
{
    #[ExportPaths(BlogPostPaths::class)]
    public function show(string $name)
    {}
}

class BlogPostPaths implements \Capo\Services\Export\Interfaces\ExportPaths
{
    public function paths(): array
    {
        return [
            '/blog/first-post',
            '/blog/second-post',
        ];
    }
}