Что такое свойство "основного файла" при создании bower init?

Каково использование свойства основного файла при запуске bower init? Я смотрю, и многие говорят, что в настоящее время у него нет цели.

Это правда? Документация Bower также не объясняет это.

Ответ 1

Согласно документации Bower.io

Основной

Рекомендуемый тип: String или Array of String

Первичные файлы, необходимые для использования вашего пакета. Пока Бауэр напрямую не использует эти файлы, они перечислены с помощью команды bower list --json andbower list - paths, поэтому их можно использовать с помощью инструментов сборки.

Файлы препроцессора, такие как CoffeeScript, должны быть скомпилированы. Не включайте мини файлы. Имена файлов не должны быть версиями (Bad: package.1.1.0.js; Хорошо: package.js).

Я думаю, что это больше для управления пакетами и создания таких инструментов, как Grunt и Brunch. Например, Bootstrap bower.json выглядит так:

{
  "name": "bootstrap",
  "version": "3.0.3",
  "main": [
    "./dist/css/bootstrap.css",
    "./dist/js/bootstrap.js",
    "./dist/fonts/glyphicons-halflings-regular.eot",
    "./dist/fonts/glyphicons-halflings-regular.svg",
    "./dist/fonts/glyphicons-halflings-regular.ttf",
    "./dist/fonts/glyphicons-halflings-regular.woff"
  ],
  "ignore": [
    "**/.*",
    "_config.yml",
    "CNAME",
    "composer.json",
    "CONTRIBUTING.md",
    "docs",
    "js/tests"
  ],
  "dependencies": {
    "jquery": ">= 1.9.0"
  }
}

Когда я создаю Brunch, он извлекает эти файлы из моей папки bower_components в моей папке public.

Ответ 2

Согласно спецификации Bower JSON (https://github.com/bower/spec/blob/master/json.md#main), свойство "main" используется для отображения файлов, используемых в основном проекте. Перечисленные файлы фактически не используются Bower каким-либо образом, они, по-видимому, существуют с целью использования другими инструментами построения.

Вот официальная спецификация:

Основной

Рекомендуемые
Тип: String или Array of String

Первичные файлы, необходимые для использования вашего пакета. В то время как Bower напрямую не использует эти файлы, они перечислены с командами bower list --json и bower list --paths, поэтому они могут использоваться средствами сборки.

  • Файлы препроцессора, такие как CoffeeScript, должны быть скомпилированы.
  • Не включать мини файлы.
  • Имена файлов не должны быть версиями (Bad: package.1.1.0.js; Хорошо: package.js).