Próbuję utworzyć konfigurację w pliku launch.json, która będzie działać npm test
w folderze, w którym .js
plik się znajduje. Odbywa się npm test
ręcznie w terminalu działa normalnie, biorąc odpowiednie polecenie od scripts
część mojej package.json
:
"scripts": {
"start": "node --experimental-json-modules nodeserver.js",
"test": "export MY_VAR=abc && node --experimental-json-modules nodeserver.js"
},
W szczególności, podczas uruchamiania npm test
bezpośrednio w terminalu, env var, określony w test
linia wejdzie w życie, a --experimental-json-modules
flaga jest przekazywana node
.
To mój startup.json:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"command": "npm test",
"name": "Run npm test",
"request": "launch",
"type": "node-terminal"
}
]
}
To w dużej mierze odpowiada jednej z predefiniowanych opcji, proponowanych w edytorze, i wygląda na to.
Ale gdy uruchamiam tę konfigurację na nodeserver.js
plik, otrzymuję:
Wydaje się, że działa node
bez flag, który wskazałem w konfiguracji? Co ja źle rozumiem w tym, jak to launch.json
schemat działa?
EDYTOWAĆ im więcej grałem, tym bardziej wydaje mi się, że konfiguracja jest po prostu całkowicie ignorowane, tak, że ona używa ustawień domyślnych node.js konfiguracja... wybieram konfigurację z listy rozwijanej i kliknij ikonę odtwarzania:
Czy powinno to zadziałać?
Oprócz biegania npm start
w terminalu jedyny automatyczny sposób, by to działać-otwórz package.json
i klikając na mały przycisk debugowania, który pojawia się obok scripts
etykieta:
Ale chciałbym dowiedzieć się, jak korzystać z launch.json
poprawnie, abym mógł przekazywać zmienne środowiskowe itp. Przez To zamiast tego.
launch.json
też... wygląda na to, że konfiguracja jest po prostu całkowicie ignorowane, tak, że ona używa ustawień domyślnych node.js konfiguracja uruchamiania.