Есть ли разница между расширением темы с помощью _module.less
и _extend.less
? И какова лучшая практика при расширении модуля / темы?
Сначала я подумал, что лучше использовать его _module.less
при стилизации нового модуля и _extend.less
при расширении модуля. Но Luma использует _module.less
при расширении пустой темы, чтобы теория ушла в окно.
Единственное различие, которое я вижу между ними, заключается в _module.less
том, что они импортируются перед отзывчивой библиотекой и _theme.less
куда как _extend.less
импортируются после них.
Это порядок, в который они импортируются vendor/magento/theme-frontend-blank/web/css/styles-l.less
//
// Blank theme desktop styles
// _____________________________________________
// These desktop styles are added to mobile
//
// Global lib + theme styles
// ---------------------------------------------
@import '_styles.less';
@import (reference) 'source/_extends.less';
//
// Magento Import instructions
// ---------------------------------------------
//@magento_import 'source/_module.less'; // Theme modules
//@magento_import 'source/_widgets.less'; // Theme widgets
//
// Media queries collector
// ---------------------------------------------
@import 'source/lib/_responsive.less';
@media-target: 'desktop'; // Sets target device for this file
@media-common: false; // Sets not to output common styles
//
// Global variables override
// ---------------------------------------------
@import 'source/_theme.less';
//
// Extend for minor customisation
// ---------------------------------------------
//@magento_import 'source/_extend.less';