2016-03-15 1 views
1

Должен признаться, что я, скорее, новичок в angularjs2, хотя я хочу просто убедиться, что сам преследует правильный путь, прежде чем копать глубже. Интересно, можно ли использовать PHP-сервер в качестве backend для angularjs2? Потому что я все еще не понимаю, как работает webpack, и идея, которая обслуживает только то, что приложение будет нужно, как если бы оно служило с сервера или только во время процесса сборки? Поскольку, похоже, работает только с файлом index.js ... мы все еще можем использовать index.html как скомпилированный индексный файл кода кода и иметь возможность использовать php с js без nodejs в реальном приложении?Вы все еще можете использовать php как backend для angularjs2 без nodejs для прямого использования?

+0

какая связь между angularjs, PHP и WebPack? Как вы собираетесь смешивать webpack и PHP? Да, вы можете использовать angularjs любой версии с PHP, и нет, вы не можете использовать webpack с PHP, если вы не можете использовать Java с PHP – smnbbrv

+1

Простой ответ: да. У вас может быть любой бэкэнд. И если это rest api, это лучшая арка для угловых или угловых2 с точки зрения производительности – Gary

ответ

1

Производственная сборка doesnot требует NodeJS, поскольку это всего лишь статические файлы html/js/css/image. Я использую PHP как мой сервер. Я перешел к подходу веб-службы с php, чем смешивал PHP с моими HTML-страницами для рендеринга данных.

Webpack с узлом/npm - отличный инструмент для модульного проекта. AngularClass Starter Pack - это хороший момент для начала, или есть тонны проектов npm с веб-пакетом. Webpack позволяет легко разрабатывать/отлаживать браузер. Например, вы можете написать свой конфигурационный файл для разработки/тестирования и производства отдельно с помощью webpack. Хорошим примером является этот,

export const BASE_URL = ('development' === process.env.ENV) 
    ?'http://localhost/service/publisher.php' 
    :'https://www.myserver.com/publish/index.php'; 

Основанный на среде webpack, я могу переключить свой php-сервер.

Если вы пишете приложение HTML5, тогда неплохо было бы разрешить «вариант» в вашем php-файле для CORS.

<?php 
    header('Access-Control-Allow-Origin: *'); 
    header("Access-Control-Allow-Headers: Origin, Content-Type, Authorization"); 
    header("Access-Control-Allow-Methods: GET, POST, PUT, OPTIONS, DELETE"); 
?> 
1

Да, вы можете, Angular2.js - это передний каркас, и вы можете сделать свою спину с языком по вашему выбору.

2

WebPack и подобные модули, такие как browserify и jspm, свяжут ваше приложение JS во время сборки. Это означает, что у вас не будет зависимости от сервера.

Вам понадобятся только Nodejs на ваших машинах разработки и машинах для сборки. Если вы используете Angular-Universal, вам понадобятся Nodejs. Предполагается поддержка других языков.

Итак, вы можете использовать PHP для размещения службы поддержки серверов или json-http.

0

Да, нет никаких ограничений для использования PHP бэкэнд и даже с базой данных MySql с угловыми 1 или 2.

Однако, поскольку услуги, как правило, построены с помощью формата JSON, это немного сложнее хранить и извлекать данные с помощью php из базы данных mySql. Вам может потребоваться несколько строк дополнительного кодирования для чтения &, чтобы записать данные json в надлежащем формате, чем если бы вы использовали, например, базу данных mongoDB на сервере Node.

0

Поскольку кто-то уже упоминалось Webpack уже (это один из моих любимых инструментов), позвольте мне объяснить более подробно о том, как это работает, и надеюсь, что это помогает (я использую тонкий PHP в качестве примера)

  • Ваш веб-пакет генерирует артефакты frontend (который является вашим файлом с файловым интерфейсом и метаданных). Файл метаданных (assets.json) сообщает вам, какой файл был сгенерирован и где находится.

Например, мета-файл будет выглядеть как этот

`{"vendors":{"js":"assets/vendors.js"},"app":{"js":"assets/f7133dfe501a7dbe8ebd.js"}}` 
  • Теперь вы можете импортировать в assets.json на ваш PHP код, например, я использую Twig здесь. Конечно, вам нужно написать какую-то пользовательскую логику для анализа json-файла на вашем PHP.

enter image description here

Смежные вопросы