Làm cách nào để đặt menu hoạt động trong laravel?

Tất cả các mục đều có phương thức


    
        Active
    

4,

    
        Active
    

5 và

    
        Active
    

6. Hai mục cuối cùng cho phép bạn xác định thủ công xem một mục có đang hoạt động hay không [theo mặc định, tất cả các mục đều không hoạt động]

Menu::new[]->add[Link::to['#', 'Active']->setActive[]];

    
        Active
    

Nếu một mục con đang hoạt động, cha mẹ cũng sẽ được coi là đang hoạt động

Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];

    
        
            
                
            
        
    

Tự động xác định các mục hoạt động

Lớp


    
        Active
    

7 cũng có một phương thức

    
        Active
    

5, nhưng nó hoạt động khác với phương thức trên

    
        Active
    

9 và
Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
0. Nó chấp nhận một url hoặc một tham số có thể gọi được và sẽ sử dụng url đó để xác định các mục cơ bản nào đang hoạt động

Xác định các mục đang hoạt động bằng một url

Bằng cách cung cấp một url, bạn có thể đặt tất cả các liên kết chứa hoặc bằng url đó là hoạt động. Trộn url tuyệt đối và tương đối cũng không phải là vấn đề

Menu::new[]
    ->link['/', 'Home']
    ->link['/about', 'About']
    ->link['/contact', 'Contact']
    ->setActive['//example.com/about'];

    Home
    About
    Contact

Nếu url cơ sở của bạn không phải là

Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
1, thì bạn nên cung cấp gốc yêu cầu để cải thiện kết hợp url đang hoạt động

Menu::new[]
    ->link['/nl/', 'Home']
    ->link['/nl/about', 'About']
    ->link['/nl/contact', 'Contact']
    ->setActive['//example.com/nl/about', '/nl'];

Các phần tử Html sẽ không bao giờ được đặt hoạt động tự động vì chúng không có thuộc tính url chuyên dụng

Gọi


    
        Active
    

5 bằng một url sẽ duyệt đệ quy qua các menu con

Xác định các mục đang hoạt động với một Callable

Nếu bạn muốn kiểm soát nhiều hơn đối với mục nào bạn muốn đặt hoạt động, bạn có thể sử dụng hàm có thể gọi trả về giá trị boolean

$menu = Menu::new[]
    ->link['/', 'Home']
    ->link['/about', 'About']
    ->link['/contact', 'Contact']
    ->setActive[function [Link $link] {
        return $link->segment[1] === 'about';
    }];

    Home
    About
    Contact

Nếu bạn chỉ muốn lặp lại một loại mục cụ thể, bạn có thể nhập nó vào phần có thể gọi được và nó sẽ bỏ qua các trường hợp khác. Xem Thao tác các mục để biết một số ví dụ

Có thể gọi sẽ không đi qua các menu con. Nếu bạn muốn duyệt sâu hơn, bạn sẽ phải thêm một cuộc gọi


    
        Active
    

5 theo cách thủ công với một cuộc gọi có thể gọi là gợi ý đánh máy

    
        Active
    

7

Hạng mục hoạt động

Theo mặc định, phần tử cha của các mục đang hoạt động sẽ nhận được một lớp

Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
5. Nếu bạn muốn ghi đè tên lớp, bạn có thể làm như vậy với
Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
6

Menu::new[]
    ->setActiveClass['is-active']
    ->add[Link::to['/', 'Home']->setActive[]];

    
        Active
    

0

Nếu bạn muốn áp dụng lớp tích cực trên

Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
7 thay vì
Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
8, hãy gọi phương thức
Menu::new[]->add[
    Menu::new[]
        ->add[Html::raw['']->setActive[]]
];
9 khi xây dựng thực đơn của bạn

Làm cách nào để kích hoạt liên kết điều hướng trong Laravel?

Cài đặt class="active" sẽ kích hoạt tất cả các viên thuốc điều hướng. Tác dụng dự định là chỉ li của trang hiện tại có lớp đang hoạt động.

Làm cách nào để tạo menu trong laravel?

Bạn có thể xác định các menu của mình trong tệp/lớp mong muốn, miễn là nó được tự động tải bởi nhà soạn nhạc. Để tạo menu, chỉ cần gọi phương thức tạo từ Mặt tiền menu . Tham số đầu tiên là tên menu và tham số thứ hai là gọi lại để xác định các mục menu.

Làm cách nào để thêm lớp đang hoạt động trong PHP?

php $active= $row['MENU'];?>

Chủ Đề