Qual é a propriedade do “arquivo principal” ao fazer o init do bower?
106
Qual é a utilidade do arquivo principal de propriedade quando você executa o bower init? Tenho procurado e muitas pessoas dizem que atualmente não tem propósito.
Isso é verdade? A documentação do Bower também não explica isso.
Parece que a definição da mainpropriedade está atualmente em questão e sendo debatida em uma questão aberta no repo do github do bower. Veja aqui as definições propostas atuais e a discussão: github.com/bower/bower/issues/935
Os principais arquivos de ação necessários para usar seu pacote. Embora o Bower não use esses arquivos diretamente, eles são listados com os comandos bower list --json ebower list --paths, portanto, podem ser usados por ferramentas de construção.
Arquivos de pré-processador, como CoffeeScript, devem ser compilados. Não inclua arquivos minificados. Os nomes de arquivos não devem ter controle de versão (Ruim: package.1.1.0.js; Bom: package.js).
Acho que é mais para o gerenciamento de pacotes e ferramentas de construção como Grunt e Brunch. Por exemplo, o Bootstrap's se bower.jsonparece com:
Isso realmente não responde à pergunta. A documentação não esclarece a função de "Os endpoints primários de seu pacote." Você declarou a relevância de main para o Brunch, mas não como ele se relaciona com o Bower.
BenjaminGolder
Acho que o que estava tentando mostrar é que os arquivos principais são utilizados em várias ferramentas de construção em relação a "esses são os arquivos que meu pacote Bower pretende distribuir." Ainda é um pouco ambíguo em relação à sua verdadeira intenção.
Kelly J Andrews
A âncora do link de documentação está morta. Veja a resposta de @Vivian Spencer para uma atualização.
Timothy Gu
9
De acordo com a especificação JSON do Bower ( https://github.com/bower/spec/blob/master/json.md#main ), a propriedade "principal" é usada para listar os arquivos usados principalmente no projeto. Os arquivos listados não são realmente usados pelo Bower de forma alguma, eles aparentemente estão lá com o propósito de serem usados por outras ferramentas de construção.
Aqui está a especificação oficial:
a Principal
Tipo recomendado : Stringou ArraydeString
Os principais arquivos de ação necessários para usar seu pacote. Embora o Bower não use diretamente esses arquivos, eles são listados com os comandos bower list --jsone bower list --paths, portanto, podem ser usados por ferramentas de construção.
Arquivos de pré-processador, como CoffeeScript, devem ser compilados.
Não inclua arquivos minimizados.
Os nomes de arquivo não devem ter controle de versão (Ruim: package.1.1.0.js; Bom: package.js).
Algumas bibliotecas simplesmente não funcionarão sem os arquivos principais listados, o wiredep para ser o exemplo perfeito.
kboom de
@kboom, posso ter o problema relacionado ao que você está dizendo: por exemplo, o arquivo css do pdf.js-viewer não será copiado usando os arquivos main-bower, devo colocá-lo em main dentro do bower.json? Em caso afirmativo, devo realmente fornecer o caminho completo para cada arquivo? obrigado!
main
propriedade está atualmente em questão e sendo debatida em uma questão aberta no repo do github do bower. Veja aqui as definições propostas atuais e a discussão: github.com/bower/bower/issues/935Respostas:
De acordo com a documentação do Bower.io
Acho que é mais para o gerenciamento de pacotes e ferramentas de construção como Grunt e Brunch. Por exemplo, o Bootstrap's se
bower.json
parece com:Quando eu crio no Brunch, ele puxa esses arquivos da minha
bower_components
pasta na minhapublic
pasta.fonte
De acordo com a especificação JSON do Bower ( https://github.com/bower/spec/blob/master/json.md#main ), a propriedade "principal" é usada para listar os arquivos usados principalmente no projeto. Os arquivos listados não são realmente usados pelo Bower de forma alguma, eles aparentemente estão lá com o propósito de serem usados por outras ferramentas de construção.
Aqui está a especificação oficial:
fonte