Mam kilka pytań dotyczących różnych rc
plików w typowym zastosowaniu węzła, jak .npmrc
, .babelrc
etc.
- Co to jest plik rc, wiem, że to plik konfiguracyjny dla modułu, ale cokolwiek innego?
- Czy plik rc musi być zgodny z
.[module]rc
konwencją nazewnictwa, czy jest to tylko zalecany format? - Jakie formaty są obsługiwane? Widziałem zarówno formaty yaml, jak i json, czy to zależy od czytnika, którego używa moduł?
- Jak uzyskać dostęp do pliku rc z perspektywy modułu? Czy nazwanie go tak
[module]rc
, aby było automatycznie dostępne dla modułu? Jeśli tak, gdzie będzie dostępna? - A może moduł powinien uzyskiwać dostęp do pliku tak samo, jak każdy inny plik z aplikacji, która korzysta z modułu i oczekiwać, że będzie miał zrozumiały format? (To właśnie robię teraz z formatem json)
- Widziałem również osoby wymagające
package.json
załadowania config. Co jest zalecane,package.json
czy plik rc? - Czym różni się on od pliku javascript, takiego jak
gulpfile.js
zmodule.exports
? (Miałem na myśli w sensie zaleceń, oczywiście znam różnicę i zalety plików js i rc)
Za każdym razem, gdy wyszukuję w Google, kończę tutaj i tutaj , co jest narzędziem do odczytu pliku rc, ale nie wyjaśnia, czym one są ani jak są zbudowane i / lub połączone z modułem.
Każdy wgląd byłby naprawdę przydatny. Dzięki
javascript
node.js
configuration
package
runtime-configuration
Gopikrishna S
źródło
źródło
.bashrc
itd.?Odpowiedzi:
Więc po pierwsze, ładnie zapytany.
rc
dotfiles to pliki konfiguracyjne, których użycie, formatowanie i ogólne znaczenie mogą się różnić. Możesz tworzyć.[whatever name you like]rc
pliki informujące o każdym pakiecie, który tworzysz (pod warunkiem, że inny pakiet nie szuka tego samego). Zwykle są przydatne w przypadku jakiegoś narzędzia, które działa na twoim kodzie źródłowym i wymaga dostrojenia specyficznego dla twojego projektu. Rozumiem, że istniały podobne pliki, które odegrały ważną rolę w systemach UNIX w przeszłości i pomysł utknął.W skrócie:
.[program or binary name]rc
package.json
pliki mogą zawierać zewnętrzne metadane odpowiednie dla konfiguracji, zależy to tylko od tego, czy twój projekt będzie oczekiwał.rc
pliku lub oczekiwał go wpackage.json
(lub obu, jak w przypadku babel)Zobacz też:
Jako niesamowicie prosty przykład:
Załóżmy, że chcesz przeczytać ten
.foorc
plik, który używa kodowania JSON:{ "cool": true }
Możesz zrobić coś takiego:
'use strict'; const fs = require('fs'); fs.readFile('./.foorc', 'utf8', (err, data) => { if (err) throw new Error(err); console.log(JSON.parse(data)); })
Istnieją o wiele lepsze sposoby, aby to zrobić, ale możesz łatwo napisać własny lub znaleźć pakiet, który będzie obsługiwał parsowanie YAML, ini itp., A także zapewni kilka innych fajnych bitów API (na przykład rc )
źródło
require('./.modulerc')
?Nie jest to specyficzne dla Node lub Babel, ale
*rc
pliki są zazwyczaj plikami konfiguracyjnymi w systemach UnixZ Wikipedii
I Runcom
Innymi słowy, „rc” to po prostu coś, co utknęło w latach sześćdziesiątych i było od tego czasu używane dość często do plików konfiguracyjnych w różnych rodzajach programów, w tym w Node, Babel i wielu, wielu innych.
Nie ma nic specjalnego w plikach "rc" i mogą one zawierać praktycznie każdy rodzaj danych, nie ma specyfikacji ani innych ograniczeń.
źródło
RC odnosi się do
https://en.wikipedia.org/wiki/Run_commands
Sufiks „rc” pochodzi od poprzedniej strony Uniksa, CTSS. Miał funkcję skryptu poleceń o nazwie „runcom”. Wczesne Uniksy używały „rc” jako nazwy skryptu startowego systemu operacyjnego, jako hołd dla CTSS runcom.
źródło
Run_command
zamiastRun_commands
. @rselvagenesh podano poprawny adres URL.