2016-07-07 5 views
8

Я создал новый проект Angular 2, используя новый Angular CLI. Теперь я не хочу использовать Angular в браузере, но в электронном приложении. Поэтому я создал файл для основного процесса электрона и после того, как построил свое приложение с угловым кодом с ng build в терминале, приложение не работает должным образом.Использование Angular 2 с электронным (угловым CLI)

Файл для основного процесса Electron:

var electron = require("electron"); 
var {app, BrowserWindow} = electron; 

app.on('ready',() => { 
    var mainWindow = new BrowserWindow(); 
    mainWindow.loadURL(`file://${__dirname}/dist/index.html`); 
}); 

Ошибка в Devtools:

file:///vendor/es6-shim/es6-shim.js Failed to load resource: net::ERR_FILE_NOT_FOUND 
file:///vendor/reflect-metadata/Reflect.js Failed to load resource: net::ERR_FILE_NOT_FOUND 
file:///vendor/systemjs/dist/system.src.js Failed to load resource: net::ERR_FILE_NOT_FOUND 
file:///vendor/zone.js/dist/zone.js Failed to load resource: net::ERR_FILE_NOT_FOUND 
index.html:22 Uncaught ReferenceError: System is not defined 

Я также знаю, что вы, по сути нужен веб-сервер для запуска Угловое 2 Приложения и я думаю, что мое приложение делает не работает, потому что Electron загружает приложение через протокол file://.

Но я действительно хочу использовать Electron в сочетании с Angular 2; так что мой вопрос в том, возможно ли это, и если да, то как мне нужно изменить созданный Угловой шаблон из утилиты cli.

+1

Первый результат поиска https://auth0.com/blog/2015/12/15/create-a-desktop- app-with-angle-2-and-electron/ – ishaan

+0

Да, но я хотел бы знать, как изменить шаблон, сгенерированный Угловой CLI. – HansMu158

ответ

-1

загрузить angular.js из CDN и поместить его в папку своего приложения. Затем в HTML файл использовать

<script type="text/javascript" src="angular.js"></script> 

В отличие от браузера электрона не будет проблемой подбирая angular.js из файловой системы.

+0

Спасибо, но я все равно получаю те же ошибки ... – HansMu158

+0

Можете ли вы показать нам свой index.html –

5

После прочтения что-то о Угловом 2 маршрутизаторе вчера, я понял, что проблема вызвана этой линией в index.html

<base href="/"> 

Заменяя его с динамически установить базовое все работает, как ожидались.

<script>document.write('<base href="' + document.location + '" />');</script> 
Смежные вопросы