Jadi saya perhatikan bahwa di sebagian besar model dan blok, ini array $data = []
diberikan sebagai parameter terakhir dari konstruktor .
Sebagai contoh \Magento\Catalog\Block\Product\ListProduct
public function __construct(
\Magento\Catalog\Block\Product\Context $context,
\Magento\Framework\Data\Helper\PostHelper $postDataHelper,
\Magento\Catalog\Model\Layer\Resolver $layerResolver,
CategoryRepositoryInterface $categoryRepository,
\Magento\Framework\Url\Helper\Data $urlHelper,
array $data = []
) {
$this->_catalogLayer = $layerResolver->get();
$this->_postDataHelper = $postDataHelper;
$this->categoryRepository = $categoryRepository;
$this->urlHelper = $urlHelper;
parent::__construct(
$context,
$data
);
}
Saya juga tahu bahwa, ketika berhadapan dengan preferensi, Anda masih harus menyimpan parameter itu di akhir daftar parameter konstruktor Anda ketika Anda menambahkan lebih banyak parameter daripada konstruktor asli.
Jadi saya punya beberapa pertanyaan tentang array ini :
- apa itu ?
- bagaimana cara menggunakannya ?
- mengapa kita perlu menyimpannya di akhir daftar parameter konstruktor ketika mendeklarasikan preferensi untuk blok yang menambahkan lebih banyak parameter?