Vì vậy, tôi nhận thấy rằng trong hầu hết các mô hình và khối, có cái này array $data = []
được đưa ra làm tham số cuối cùng của hàm tạo .
Ví dụ \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
);
}
Tôi cũng biết rằng, khi xử lý các tùy chọn, bạn vẫn phải giữ tham số đó ở cuối danh sách tham số hàm tạo khi bạn thêm nhiều tham số so với hàm tạo ban đầu.
Vì vậy, tôi đã có một số câu hỏi liên quan đến mảng này :
- nó là gì ?
- Làm thế nào để sử dụng nó ?
- tại sao chúng ta cần giữ nó ở cuối danh sách tham số hàm tạo khi khai báo tùy chọn cho một khối có thêm tham số?