Когда использовать ' npm start 'и когда использовать'ng serve'?
ng serveобслуживает угловой проект через сервер разработки
npm startзапускает произвольную команду, указанную в пакете " start"
свойство его объекта "скрипты". Если свойство "start" не указано
на объекте "скрипты" он будет запускать сервер узлов.js.
кажется ng serve запускает встроенный сервер, тогда как npm start запускает серверы узлов.
может кто-то подкинуть свет на нем?
3 ответов:
npm startбудет работать все, что вы определили для на .так что если это выглядит так:
"scripts": { "start": "ng serve" }затем
npm startбудет работатьng serve.
для проекта, который использует CLI, вы обычно будете использовать ng serve. В других случаях вы можете использовать npm start. Вот подробное объяснение:
НГ служить
будет служить проект, который и 'Angular CLI aware', т. е. проект, который был создан с использованием Angular CLI, в частности с использованием:
ng new app-nameИтак, если вы создали проект с помощью CLI, вы, вероятно, захотите использовать ng serve
npm старт
Это может быть использовано в случае проекта, который составляет не Угловое командной строки понимаем (или он может просто использоваться для запуска 'НГ служить для Проект угловой Кинк в курсе)
как указано в других ответах, это команда npm, которая будет запускать команды npm из пакета.json, которые имеют идентификатор "start", и он не просто должен запускать "ng serve". Можно иметь что-то вроде следующего в пакете.json:
"scripts": { "build:watch": "tsc -p src/ -w", "serve": "lite-server -c=bs-config.json", "start": "concurrently \"npm run build:watch\" \"npm run serve\"" ... }, "devDependencies": { "concurrently": "^3.2.0", "lite-server": "^2.2.2",In в этом случае 'npm start' приведет к выполнению следующих команд:
concurrently "npm run build:watch" "npm run serve"это будет одновременно запускать компилятор TypeScript (наблюдая за изменениями кода) и запускать узел lite-server (который пользователи BrowserSync)
из документа
при этом выполняется произвольная команда, указанная в свойстве пакета "start" объекта "scripts". Если в объекте" scripts "не указано свойство" start", он будет запускать сервер узлов.js.
что означает, что он будет вызывать сценарии запуска внутри пакета.json
"scripts": { "start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite --baseDir ./app --port 8001\" ", "lite": "lite-server", ... }обеспечивается угловой / угловой-cli для запуска angular2 приложений, которые созданные угловые-Кинк. когда вы устанавливаете angular-cli, он создаст ng.УМК под
C:\Users\name\AppData\Roaming\npm(для Windows) и выполнить"%~dp0\node.exe" "%~dp0\node_modules\angular-cli\bin\ng" %*так что с помощью
npm startвы можете сделать свое собственное исполнение, гдеng serveтолько для углового-cliЧитайте Также : что происходит, когда вы запускаете ng служить?
Comments