رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
منظور از view composer چیست
#1
سلام دوستان. میشه یه توضیحی در این مورد بدید که بفهمم منظور چیه هستش؟ ممنون
پاسخ
تشکر شده توسط:
#2
Don’t Repeat Yourself
بسیاری از تکرارها باید یک لایه انتزاع بین کنترلر و ویو باشد.

به احتمال زیاد شما  در هر صفحه داده های مشابه  خواهید داشت.
فرض کنید تو کنترلرهای متعدد، پرس و جو های یکسانی رو برای تولید داده واستفاده در چند ویو رو تکرار میکنید.
حالا به هردلیلی تصمیم میگیرید برای بروزرسانی و یاتفییر برای داده تولید شده دست به تغییر بزنید.

حالا چیز بیار چیز بار کن.
باید تغییرات جدید رو تموم ویو ها اعمال کرد.

ویو کامپوز به کمک شما میاد برای سازماندهی کردن منطق تولید کد تو یه محل خاص و قرارد دادن اون تو N تا ویو....

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Users\Repository as UserRepository;

class ComposerServiceProvider extends ServiceProvider
{
   public function boot()
   {
       // Using Closure based composers...
       view()->composer('dashboard', function ($view) { 
$view->with('count', $this->users->count());
       });
   }

   public function register()
   {
      
   }
}





<?php

namespace App\Http\ViewComposers;

use Illuminate\Contracts\View\View;

class ProfileComposer
{
   protected $users;

   public function __construct(UserRepository $users)
   {
// Dependencies automatically resolved by service container...
       $this->users = $users;
   }
   
}


<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Users\Repository as UserRepository;

class ComposerServiceProvider extends ServiceProvider
{
   public function boot()
   {
       // Using class based composers...
       view()->composer(
           'profile', 'App\Http\ViewComposers\ProfileComposer'
       );
   }

   public function register()
   {
      
   }
}

یادگیری مداوم حداقل شرط لازم برای موفقیت در هر زمینه ای است که در آن فعالیت می کنید؛ هر روز چیز جدیدی بیاموزید.
پاسخ
تشکر شده توسط: tux-world




کاربران در حال بازدید این موضوع: 2 مهمان