首页 > 解决方案 > 我可以根据 URL 显示单一视图的不同部分吗?

问题描述

为简单起见,假设我有一个包含 ul 和 4 个 div 的视图

<ul>
    <li>Section 1</li>
    <li>Section 2</li>
    <li>Section 3</li>
    <li>Section 3</li>
<ul>

<div class='1'></div>

<div class='2'></div>

<div class='3'></div>

<div class='4'></div>

是否可以根据 URL 使用户仅看到四个 div 之一?例如:

在 URL www.example.com/first 上,用户会收到一个包含以下内容的视图:

<ul>
    <li>Section 1</li>
    <li>Section 2</li>
    <li>Section 3</li>
    <li>Section 3</li>
<ul>

<div class='1'></div>

在 URL www.example.com/second 上,用户会收到一个包含以下内容的视图:

<ul>
    <li>Section 1</li>
    <li>Section 2</li>
    <li>Section 3</li>
    <li>Section 3</li>
<ul>

<div class='2'></div>

在 URL www.example.com/third 上,用户会收到一个包含以下内容的视图:

<ul>
    <li>Section 1</li>
    <li>Section 2</li>
    <li>Section 3</li>
    <li>Section 3</li>
<ul>

<div class='3'></div>

如果我有 4 个不同的视图,我可以轻松做到这一点,但我的目标是将所有代码放在 1 个视图中,然后根据 URL 显示正确的部分。

标签: phplaravellaravel-5laravel-blade

解决方案


您可以使用请求对象轻松检查,并检查当前段。

例如:

@if(request()->is('first'))
    <div class="1"></div>
@elseif(request()->is('second'))
    <div class="2"></div>
@endif

这应该给你的想法。


推荐阅读