찾다

 >  Q&A  >  본문

laravel이 상위 클래스 레이어를 통해 작동하는 경우 매개변수는 블레이드 페이지 레이아웃으로 전달됩니다.

레이아웃에 사용되는 변수의 경우 컨트롤러에서 매개변수가 전달되면 각 뷰에 대해 작업을 반복해야 합니다!
사용할 모든 뷰에 대한 작업 후 결과를 레이아웃에 전달하는 문제를 해결하는 방법(레이아웃 뷰에 비즈니스 코드가 표시되는 것을 원하지 않습니다)

예:
1. 권한 관리, 사용자에 따라 다른 메뉴를 설정하세요!
2. 메뉴의 동적 숫자(예: [오늘의 주문(50)]), 50은 모든 컨트롤러가 데이터를 얻은 다음 뷰에 전달해야 합니다!

阿神阿神2805일 전430

모든 응답(3)나는 대답할 것이다

  • 迷茫

    迷茫2017-05-16 16:58:01

    이 문제를 해결하는 방법에는 두 가지가 있습니다:

    첫 번째: 전통ViewComposerProvider

    으아악

    두 번째, Laravel 5.1의 새로운 기능 @inject:

    으아악

    예를 들어 다음과 같이 할 수 있습니다.

    으아악

    SiteNav에서 데이터를 쿼리하면 됩니다.

    여담: 문서를 주의 깊게 읽으면 직면한 문제의 80%를 해결할 수 있습니다.

    해피해킹

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-05-16 16:58:01

    으아악

    회신하다
    0
  • PHPz

    PHPz2017-05-16 16:58:01

    위에 언급된 방법은 신뢰할 수 없으며 현재 URL 매개변수를 가져와 함수에 전달할 수 없습니다

    회신하다
    0
  • 취소회신하다