首页 > 解决方案 > 在 Laravel 项目中使用 Vuepress

问题描述

我实际上正在运行一个 Laravel 网站,我想在其中运行 Vuepress 文档部分。

由于说明,安装 Vuepress 非常简单,开发服务器也是如此。

但是,在将其集成为静态站点时,我有点迷失与 Laravel 的交互。

我所有的文档都位于docs我的 Laravel 应用程序根目录下的一个文件夹中。

我设法设置了 Vuepress'config.js以将静态站点构建到另一个文件夹中。

base: '/docs/',
dest:'./public/docs',

执行上述操作,将文档完全暴露给网络(在公共文件夹中)。

但是,我正在寻找的是在 Laravel 中更精确地集成它(使用我创建的中间件和路由)。

标签: laravelvuepress

解决方案


方法一

1./docs在你的laravel目录下安装vuepress

base2. 正确配置vuepressdest

/docs/.vuepress/config.js

module.exports = {
  dest: 'public/docs',
  base: 'docs/',
};


3. 启用 laravel 视图以包含目录中的/public 文件

/app/config/view.php

...
'paths' => [
    resource_path('views'),
    base_path('public'), // now blade's @include will also look in /public
],
...


4.为vuepress创建一个允许.html扩展的laravel路由

/routes/web.php

use View;
Route::get('/docs', function() {
  View::addExtension('html', 'php'); // allows .html
  return view('docs.index'); // loads /public/docs/index.html
});


方法二

或者通过 Laravel 对资产进行更多控制,您可以在此处尝试本教程:https ://serversideup.net/vuepress-within-a-laravel-application/


推荐阅读