Сторінка 4 - Місячний архів: 2018
- 1 хв читання
У Magento 2 однією з нових властивостей є віртуальний тип Magento 2. Для чого вони потрібні?
Уявіть, що у вас вже є клас A :
namespace VendorName\ModuleName\Model
class A{ protected $arg1; protected $arg2; protected $arg3; public function __construct( Argument1 $arg1, Argument2 $arg2, Argument3 $arg3 ) { $this->arg1 = $arg1; $this->arg2 = $arg2; $this->arg3 = $arg3; }
}
, і вам потрібно створити клас B, , який буде успадкований від A. Однак, він повинен приймати інший аргумент, як $arg2. Для цього вам потрібно створити новий PHP-файл для класу B:
namespace Me\MyModule\Model
class B extends A{ public function __construct( Argument1 $arg1, SomeOtherArg $someOtherArg, Argument2 $arg3 ) { parent::__construct($arg1, $someOtherArg, $arg3) }
}
. Але вам не потрібно робити це в Magento 2. У таких випадках створюються віртуальні типи. Тому створіть файл etc/di.xml уihor