Angular 2 приложения для настольных компьютеров (без электрона)

Angular веб-сайт (www.angular.io) утверждения Angular могут использоваться для "Для Интернета, мобильного Интернета, родного мобильного и родного рабочего стола". Я хотел бы узнать больше о собственных возможностях рабочего стола, но не могу найти что-либо на сайте angular.io. Может ли кто-нибудь указать мне какую-либо документацию или примеры?

Ответ 1

Это сбивает с толку, но нет никакого способа создать собственное настольное приложение только с Angular2. Может быть, это план на будущее, но пока это невозможно. Но Angular2 довольно хорошо работает с Electron! Я написал блог об этом, к сожалению, только на немецком языке :( Но, возможно, вы можете просто перевести его с помощью Google Translator: https://medium.com/@baerree/ich-packe-meine-koffer-angular-cli-electron-ii-28644342b956

По сути, вам нужно выполнить шаги, описанные здесь: http://www.blog.bdauria.com/?p=806

После создания электронного скелета вокруг вашего приложения и выполнения шагов по настройке Angular2, описанных в ссылке, есть одна вещь, которую нужно сделать:

Электронная область отсутствует в вашей области Angular2. Это означает, что если вы хотите получить к нему доступ, вам нужно направить электрон внутри Angular2. Это можно сделать, добавив в свой index.html следующее (будьте осторожны, это не чистое решение):

 <script>
  var electron = require('electron');
 </script>

после того, как вы это сделали, вам нужно сообщить typeScript, что теперь есть электронная переменная, добавив это в ваши typescript.d.ts:

declare var electron: any;

теперь вы можете получить доступ к электрону внутри Angular2, позвонив:

var app = electron.remote.app;

с переменной приложения у вас есть полный доступ к электрону и вашему файлу Electron.js. Например. Вы могли бы сделать такие вещи:

this.title = app.getAppPath();

Я надеюсь, что это помогло хотя бы немного :)

ура

Ответ 2

Ну, у вас должна быть какая-то оболочка. Существует не способ, что angular 2 сам по себе может создавать настольные приложения. angular - это чисто веб-технология и поэтому работает с браузером. Рамки, такие как электрон, создают оболочку браузера, чтобы обмануть пользователя, думая, что приложение не является браузером, например хром.

Сказав, что для полного ответа на ваш вопрос вы можете создать приложение angular 2 без использования электрона с использованием ядра asp и Универсальная платформа Windows. Это позволяет вам разрабатывать в javascript, html и css, что является именно тем, что есть angular. Тем не менее, вы затем заперты в .net и только приложения для настольных компьютеров Windows. Который, если вы только разрабатываете для окон, то это гораздо лучшее решение, чем электрон IMHO.

Также обратите внимание, что вы, вероятно, будете писать некоторую конфигурацию С#.

Существуют также альтернативы электрону, которые в значительной степени выполняют одно и то же (оболочка браузера)

http://appjs.com/

https://nwjs.io/

Ответ 3

Там рамки, которые находятся в начальной разработке.

NG-QT https://github.com/ng-qt/ng-qt

Это основано на https://github.com/nodegui/nodegui

Они используют код js для логики и Qt для пользовательского интерфейса. Я никогда не пробовал, поэтому я не знаю, насколько это продуктивно