Magento2: різні види файлів composer.json


9

У Magento2 я бачу, що різні постачальники дотримуються різних форматів composer.json, наведених нижче, щоб назвати свої модулі.
1-й:

 "autoload": {
    "files": [ "registration.php" ],
    "psr-4": {
      "Amit\\SamplePage\\": ""
    }
  }

2-й:

   "extra": {
        "map": [
            [
                "*",
                "Amit/SamplePage"
            ]
        ]
    }

1. Яка різниця між ними і яку я повинен слідувати?
2. registration.phpвикористовується для реєстрації модуля, то чому composer.jsonвін потрібен у всіх модулях?

Відповіді:


12

Це шлях:

"autoload": {
    "files": [ "registration.php" ],
    "psr-4": {
      "Amit\\SamplePage\\": ""
    }
  }

Функція карти в композиторі:

   "extra": {
        "map": [
            [
                "*",
                "Amit/SamplePage"
            ]
        ]
    }

примушує встановити розширення app/code. Це було використано у старіших версіях бета-версії Magento 2. Хоча це працюватиме, Magento вже не завантажує розширення. Якщо ви не використовуєте функцію map, розширення буде встановлено у папці постачальника, як і належить.

registration.php визначає тип: тему чи розширення та реєструє вашу тему / розширення в Magento 2.

composer.jsonФайл додається так що розширення може бути завантажене з допомогою Composer. Він також обробляє автоматичне завантаження вашого розширення.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.