小编Eri*_*ric的帖子

使用 Laravel 8 和 Inertia 的 Vue 2 种不同的刀片根模板?

所以我正在使用 Inertia 和 Vue 开发 Laravel 8 应用程序。

这个想法是,大多数页面都是 Laravel + Blade(有利于 SEO、快速加载等...),但对于需要大量用户交互的选定页面,我在 Blade 模板中插入一个 Vue 组件,其中需要交互即将发生。

return Inertia::render('vueComponent')对于 Inertia,这是通过在 Laravel Route 调用的 Controller 中调用 Vue 组件来完成的。数据可以传递到 Vue 实例,甚至传递到 Blade 模板,所以这很好(见下文)。

namespace App\Http\Controllers;
use Inertia\Inertia;

class RangePageController extends Controller
{
    public function show(string $lang='fr')
    {
        // Strip the trailing slash from $lang
        $lang = Str::before($lang, '/');

        return Inertia::render('ProductsGallery', ['bar' => "Hello World"])->withViewData(['lang' => $lang]);
    }
}
Run Code Online (Sandbox Code Playgroud)

默认情况下,文件“/resources/views/app.blade.php”使用 Vue 组件呈现,替换 @inertia 指令(加上一些 Vue 数据)。整洁的。

默认情况下,使用 Blade 布局文件“app.blade.php”。该文档指定可以更改默认值:Inertia\Inertia::setRootView('name');

问题:有没有办法在从控制器调用不同页面时选择不同的 …

inertiajs laravel vue.js laravel-blade

5
推荐指数
1
解决办法
4305
查看次数

并行使用 Laravel Inertia.js、Vue 和 Blade?

有没有一种方法可以将 Laravel Blade 用于多页面网站(电子商务)的一部分,并将 Inertia/Vue 用于某些特定页面(例如购物篮和管理页面)?不要将两者混合在同一页上,正如我在其他评论中看到的那样。

\n

第一类是大量静态页面,需要快速加载和强大的 SEO 参考(产品页面和目录)。第二个不需要索引,但需要大量的用户交互。

\n

我在我的第一个项目中尝试了一些东西,但是当 Inertia 处于活动状态时,我似乎无法调用 Laravel 路由。另外,在 Blade 页面中加载所有 Inertia 和 Vue 并没有什么意义。因此,作为初学者,我想我只需要在 Vue 页面(管理和购物篮)上加载 Inertia + Vue 代码。我想还有很多其他问题需要解决。

\n

或者也许废弃 Inertia.js,只在 Vue 页面上加载普通的 Vue.js?但这意味着还要加载路由器和数据存储......

\n

非常感谢您提供有关最佳继续方式的想法!\nE.

\n

inertiajs laravel vue.js laravel-blade

3
推荐指数
1
解决办法
5278
查看次数

标签 统计

inertiajs ×2

laravel ×2

laravel-blade ×2

vue.js ×2