2016-02-15 17 views
14

Próbuję użyć Visual Studio (nie VSCode) do stworzenia prostej aplikacji Electron. Robię to za pomocą narzędzi Node.js dla rozszerzenia Visual Studio (v1.1). Używam podstawową aplikację Quick Start, który działa dobrze, jeśli uruchomić poprzez początku npm, ale jeśli uruchomić za pomocą Visual Studio, otrzymuję następujący błąd na rozruch:Tworzenie aplikacji elektronowej za pomocą Visual Studio (nie VSCode) w/Node.js narzędzia

„Nie można odnaleźć modułu«elektron»na pierwszy wiersz:
const electron = require('electron');

mogę powiedzieć Visual Studio, aby uruchomić aplikację Electron pierwszy przed rozpoczęciem to node.js debugger? Czy ktoś inny dostał ten zestaw do pracy w ogóle?

Odpowiedz

33

To jest możliwe. Spróbuj zrobić to, co poniżej:

  • Utwórz pustą aplikację konsolową JavaScript Node.js w Visual Studio. Potrzebujesz najnowszej wersji zainstalowanego węzła: Myślę, że mam 5.6.0. Używam VS 2015.
  • Dodaj sekcję zależności do pakietu package.json, który został utworzony i elektronika odniesienia. I odwołuje 0.36.2 poniżej jak to jest wersja Używam:

    „Zależności”: { „elektron-Montowane”: „0.36.2”},

  • Stawia wpisu w roztworze Explorer pod npm, więc faktycznie zainstaluj go można kliknąć prawym przyciskiem myszy/zainstalować pakiet npm (lub odpalenie wiersza polecenia i zrobić npm install).
  • Skopiuj kod z elektron-quick-start na GitHub: utwórz index.html taki sam jak na GitHub i wklej zawartość main.js do szybkiego startu do app.js. Nie ma potrzeby zmiany nazwy.
  • Przejdź do właściwości pliku projektu aplikacji konsoli. Gdzie jest napisane "Węzeł ścieżka exe:" umieść ścieżkę do pliku elektronron.exe, który został zainstalowany, który znajduje się w podfolderze node_modules \ electron-prebuilt \ dist \ electron.exe.
  • Umieść punkt przerwania w pierwszym wierszu createWindow w pliku app.js.
  • Rozpocznij w debugowaniu: zostanie przerwane w punkcie przerwania, a jeśli będziesz kontynuować, pokaże się podstawowa aplikacja elektronu.

To wszystko dobrze i dobrze, ale to, jak użyteczne, zależy od tego, co naprawdę chcesz, aby Visual Studio zrobiło dla ciebie. Przerywa tylko główny wątek, ale możesz debugować wątki renderowania za pomocą narzędzi deweloperskich Chrome, jak zwykle. Uważam, że aplikacje narzędzi węzła trochę ograniczają. Może jeden z innych typów projektów byłby lepszy.

Edit maja 2017: To nadal współpracuje z Visual Studio 2017 i elektronu 1.6.6 i aktualną electron-quick-start, jak również Electron's own quick start code. Możesz teraz zainstalować "elektron" zamiast "elektronicznie skonstruowany" ("zależności": {"elektron": "1.6.6"},).

Edytuj Listopad 2017: To podejście przestało działać z elektronem 1.7.x i nowszym. Nadal działa w wersji elektronowej 1.6.x, którą elektron nadal uwalnia. W wersjach 1.7.x i nowszych można wykonać powyższe kroki, ale program Visual Studio nie zostanie natychmiast przerwany po uruchomieniu w debugowaniu.Zamiast tego musisz dodatkowo:

  • Dodaj "--inspect-brk" pod opcjami "Node.exe w oknie Właściwości projektu.
  • start w debugowania
  • w Visual Studio do Debug/Attach to Process, należy dołączyć do procesu websocket Webkit '' http://127.0.0.1:5858
  • Kod powinien przerwać i można trafić kontynuować.

Więcej szczegółów i zdjęć znajduje się w innym answer on Stack Overflow.

+0

Działa dobrze z najnowszym elektronem (1.26) – Jerry

+0

Próbowałem tego z elektronem 1.3.3, ale punkty przerwania nigdy nie trafiały. Jakieś sugestie? – Frank

+2

Dla Visual Studio 2017 musiałem również zaznaczyć opcję "Uruchom przeglądarkę po uruchomieniu". –