Angular2 QuickStart npm start is not working correctly. Angular2 QuickStart的npm start功能无法正常工作。

15 浏览
0 Comments

Angular2 QuickStart npm start is not working correctly. Angular2 QuickStart的npm start功能无法正常工作。

我知道Angular2 beta刚刚发布,但我无法复制他们官方网站教程(https://angular.io/guide/quickstart)上的步骤。也许有人遇到过类似的问题并知道如何解决?当我尝试使用npm start命令启动应用程序时,我会得到如下输出:

0 info it worked if it ends with ok

1 verbose cli [ 'node', '/usr/local/bin/npm', 'start' ]

2 info using npm@2.7.4

3 info using node@v0.12.2

4 verbose run-script [ 'prestart', 'start', 'poststart' ]

5 info prestart angular2-quickstart@1.0.0

6 info start angular2-quickstart@1.0.0

7 verbose unsafe-perm in lifecycle true

8 info angular2-quickstart@1.0.0 Failed to exec start script

9 verbose stack Error: angular2-quickstart@1.0.0 start: `concurrent "npm run tsc:w" "npm run lite" `

9 verbose stack Exit status 127

9 verbose stack at EventEmitter. (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:213:16)

9 verbose stack at EventEmitter.emit (events.js:110:17)

9 verbose stack at ChildProcess. (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:14:12)

9 verbose stack at ChildProcess.emit (events.js:110:17)

9 verbose stack at maybeClose (child_process.js:1015:16)

9 verbose stack at Process.ChildProcess._handle.onexit (child_process.js:1087:5)

10 verbose pkgid angular2-quickstart@1.0.0

11 verbose cwd /Users/tmrovsky/Documents/angular2/angular2-quickstart

12 error Darwin 13.4.0

13 error argv "node" "/usr/local/bin/npm" "start"

14 error node v0.12.2

15 error npm v2.7.4

16 error code ELIFECYCLE

17 error angular2-quickstart@1.0.0 start: `concurrent "npm run tsc:w" "npm run lite" `

17 error Exit status 127

18 error Failed at the angular2-quickstart@1.0.0 start script 'concurrent "npm run tsc:w" "npm run lite" '.

18 error This is most likely a problem with the angular2-quickstart package,

18 error not with npm itself.

18 error Tell the author that this fails on your system:

18 error concurrent "npm run tsc:w" "npm run lite"

18 error You can get their info via:

18 error npm owner ls angular2-quickstart

18 error There is likely additional logging output above.

19 verbose exit [ 1, true ]

我使用的是:

typescript 1.7.5版本

node 0.12.2版本

也许有人可以帮助解决这个问题 🙂 ?

package.json:

{

"name": "angular2-quickstart",

"version": "1.0.0",

"scripts": {

"tsc": "tsc",

"tsc:w": "tsc -w",

"lite": "lite-server",

"start": "concurrent \"npm run tsc:w\" \"npm run lite\" "

},

"license": "ISC",

"dependencies": {

"angular2": "2.0.0-beta.0",

"systemjs": "0.19.6",

"es6-promise": "^3.0.2",

"es6-shim": "^0.33.3",

"reflect-metadata": "0.1.2",

"rxjs": "5.0.0-beta.0",

"zone.js": "0.5.10"

},

"devDependencies": {

"concurrently": "^1.0.0",

"lite-server": "^1.3.1",

"typescript": "^1.7.3"

}

}

index.html:

Angular 2 QuickStart

Loading...

app.components.ts:

import {Component} from 'angular2/core';

@Component({

selector: 'my-app',

template: '

My First Angular 2 App

',

})

export class AppComponent {}

boot.js:

import {bootstrap} from 'angular2/platform/browser'

import {AppComponent} from './app.component'

bootstrap(AppComponent);

0
0 Comments

Angular2 QuickStart中的npm start命令无法正确运行的问题可能是由于以下原因引起的:

首先需要更新npm、lite-server和typescript:

sudo npm update -g && sudo npm install -g concurrently lite-server typescript

从Angular项目目录中删除node_modules文件夹(如果存在)。然后运行:

npm install

然后解决ENOSPC错误:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

最后运行:

npm start

这是我的package.json文件:

{
  "name": "reservationsystem",
  "version": "0.0.1",
  "scripts": {
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
  },
  "dependencies": {
    "a2-in-memory-web-api": "~0.1.0",
    "angular2": "2.0.0-beta.3",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "systemjs": "0.19.17",
    "zone.js": "0.5.11"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^2.0.1",
    "typescript": "^1.7.5"
  }
}

我点赞是因为这个解决了我的问题。然而,我想了解如何通过将fs.inotify.max_user_watches添加到/etc/sysctl.conf中来解决问题。

似乎观察者需要更多的内存,而这提供了这个内存。

我发现,当我首先删除模块时,它似乎工作得更好--`rm -r node_modules/`。无论如何,正如作者所说,这让我能够继续进行;但是我认为`fs.inotify.max_user_watches=524288`对我来说似乎有点过多。难道这是一个更好的选择吗?

值得一提的是,JavaScript快速入门可以直接运行,无需添加额外的内容。当服务器停止时,网页仍然保留在屏幕上。而TypeScript版本则会在404错误后消失。这真的帮了我大忙,谢谢你。`echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p`

0
0 Comments

原因:在使用npm start命令时,出现了问题。解决方法是确保已全局安装了一些devDependencies,包括concurrentlylite-servertypescript

解决方法:首先,尝试运行以下命令:

npm install -g concurrently

npm install -g lite-server

npm install -g typescript

其中,lite-server是可选的,也可以使用其他服务替代。

如果上述方法不起作用,可以尝试以下命令:

sudo npm update -g && sudo npm install -g concurrently lite-server typescript

还需要记得卸载本地版本的lite-server

npm uninstall lite-server

这些方法已经成功解决了一些用户在使用npm start命令时遇到的问题。但也有一些用户反馈说,上述方法并没有起作用,他们仍然遇到了npm ERR! undefined prepublish: gulp prepublish的错误。对于这种情况,可能需要进一步排查其他问题。

不过,全局安装这些devDependencies的目的是确保npm start命令正常运行。

0
0 Comments

问题出现的原因是在package.json文件中的start字段中运行了两次tsc命令,即"start": "tsc & concurrently "npm run tsc:w" "npm run lite" "。解决方法是将start字段中的tsc命令删除一次,即修改为"start": "concurrently "npm run tsc:w" "npm run lite" "。

为什么要运行两次tsc命令(tsc和tsc -w)呢?在Pluralsight的"play by play angular 2 quick start"课程中,Ward Bell解释了这个问题。"tsc"先编译代码,因为在较大的项目中,如果没有这一步,可能会导致服务器在编译结束之前启动。在这种情况下,服务器会抛出错误,指示不知道该做什么。

在2017年,你在答案中的解决方法揭示了真正的问题,即在应用代码的TypeScript中存在编译错误。当我修复了编译错误后,原始版本就可以正常工作了,不再需要你的解决方法。

很好... "start": "concurrently "npm run tsc:w" "npm run lite" " 对我有用...

0