2015-03-09 17 views
7

Czy istnieje jakaś konwencja dotycząca nazewnictwa niestandardowych zadań zadawania, które zawierają więcej niż jedno słowo? Na przykład: grunt-json-schema wtyczka gruntu ma json_schema task. Jedna nazwa zawiera kreski (-), druga zawiera podkreślenia (_).niestandardowe nazewnictwo zadania nazewnictwa

Oczywiście, przerywana-name nie może być stosowany jako JavaScript klucza obiektu:

grunt.initConfig({ 
    json-schema: { // WON'T work 

Muszą być ujęty w cudzysłów:

grunt.initConfig({ 
    'json-schema': { // will work 

sprawdziłem wszystkie oficjalne pluginy (grunt-contrib-*) , ale wszystkie składają się z jednego słowa. Motywacja do tego pytania jest prosta: po prostu chcę przestrzegać konwencji.

Odpowiedz

-1

Krótka odpowiedź: Nazwy zadań wtyczek/niestandardowych nie muszą korelować z określoną nazwą obiektu konfiguracyjnego.

Aplikacja apletu Grunt.js umożliwia dostęp do obiektu konfiguracyjnego za pomocą methodgrunt.config. Zadania & Wtyczki mają dostęp do całego obiektu, a nie tylko do obiektu podrzędnego, który jest skorelowany z nazwą.

Na przykład, można utworzyć zadanie o nazwie foo uzyskującego dostęp config z bar:

grunt.initConfig({ 
    bar: { 
     baz: true 
    } 
}); 

grunt.registerTask('foo', 'example custom task', function() { 
    var config = grunt.config('bar'); 
    grunt.log.ok(config); 
}); 

Najlepsze praktyki: deweloperzy Plugin powinien wymienić klucz do ich config obiektu podobnego do nazwy pluginu samego. Pomaga to w łagodzeniu konfliktów z innymi wtyczkami, które mogą odwoływać się do podobnych.

grunt.initConfig({ 
    foo: { 
     baz: true 
    } 
}); 

grunt.registerTask('foo', 'example custom task', function() { 
    var config = grunt.config('foo'); 
    grunt.log.ok(config); 
}); 
+0

To nie odpowiada na pytanie o nazywanie konwencji. – phobos2077

+0

Odpowiada na pytanie w oparciu o kontekst. Jeśli szukasz literalnej odpowiedzi na temat: konwencja nazewnictwa, odpowiedź brzmi, że Grunt rezerwuje konwencję 'contrib- * 'dla swoich własnych wtyczek (' grunt-contrib-copy'), poza tym autor wtyczek jest wolny na życzenie jednak. – theaccordance

0

Myślę, że ogólną konwencją jest użycie camelCase dla zadań składających się z wielu słów.

Powiązane problemy