Angular2 QuickStart npm start tidak bekerja dengan benar

105

Struktur file

Saya tahu Angular2 beta baru saja dirilis tetapi saya tidak dapat mereproduksi langkah-langkah dari tutorial situs resmi mereka ( https://angular.io/guide/quickstart ). Mungkin seseorang memiliki masalah serupa dan tahu apa yang harus dilakukan untuk memperbaikinya? Ketika saya mencoba memulai aplikasi dengan npm startperintah, saya mendapatkan output seperti ini:

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.<anonymous> (/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.<anonymous> (/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 ]

Saya memiliki: naskah versi 1.7.5 node versi 0.12.2

Mungkin seseorang bisa membantu memecahkan masalah :)?

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:

<html>

<head>
    <title>Angular 2 QuickStart</title>

    <!-- 1. Load libraries -->
    <script src="node_modules/es6-shim/es6-shim.js"></script>
    <script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>
    <script src="node_modules/rxjs/bundles/Rx.js"></script>
    <script src="node_modules/angular2/bundles/angular2.dev.js"></script>

    <!-- 2. Configure SystemJS -->
    <script>
        System.config({
            packages: {
                app: {
                    format: 'register',
                    defaultExtension: 'js'
                }
            }
        });
        System.import('app/boot')
                .then(null, console.error.bind(console));
    </script>

</head>

<!-- 3. Display the application -->
<body>
<my-app>Loading...</my-app>
</body>

</html>

app.components.ts:

import {Component} from 'angular2/core';

@Component({
    selector: 'my-app',
    template: '<h1>My First Angular 2 App</h1>',
})

export class AppComponent {}

boot.js:

import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.component'

bootstrap(AppComponent);
Tomasz Ciunel
sumber
Bisakah Anda mengedit posting Anda dengan file Anda?
Romain
Apa struktur folder Anda? apakah index.html ada di dalam app/atau di luarnya?
the_critic
Pertama, file Anda boot.js harus file naskah mengubah nama sebagai boot.ts . Saya tidak melihat hal lain yang tampaknya salah ... Seperti kata the_critic , bisakah Anda memberi tahu kami struktur proyek Anda.
Romain
Ini adalah boot.ts. Saya salah mengetik 'js' di sini di stackoverflow - maaf. Indeks html ada di root seperti package.json misalnya. Itu tidak ada di direktori app /.
Tomasz Ciunel
2
Pastikan versi node Anda >=4.2.1 <5dan versi npm Anda >=2.14.7 <3.0seperti yang ditentukan dalam panduan DEVELOPER . Saya pikir Anda bisa membuatnya bekerja dengan node 5, tapi saya tidak tahu caranya.
Eric Martinez

Jawaban:

224

Ubah startbidang di package.json dari

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" "

untuk

"start": "concurrently \"npm run tsc:w\" \"npm run lite\" "
pengguna60108
sumber
2
Mengapa dia menjalankan tsc dua kali ( tscdan tsc -w)?
smartmouse
9
Berhasil! Tapi kenapa? Mulai putus asa di ng2.
Maxim
9
Dalam kursus "play by play angular 2 quick start" di Pluralsight Ward Bell menjelaskan hal ini. "tsc" mengkompilasi kode terlebih dahulu karena tanpanya, dalam proyek yang lebih besar, mungkin saja server dimulai sebelum kompilasi berakhir. Dalam hal ini server akan menampilkan kesalahan yang menunjukkan tidak tahu apa yang harus dilakukan.
Starceaker
1
Pada tahun 2017, solusi Anda dalam jawaban Anda mengungkap masalah sebenarnya, yaitu ada kesalahan kompilasi dalam skrip ketikan di kode aplikasi. Ketika saya memperbaiki kesalahan kompilasi, versi asli berfungsi dengan baik tanpa solusi Anda lagi.
CodeMed
1
Luar biasa ... "start": "secara bersamaan \" npm run tsc: w \ "\" npm run lite \ "" bekerja untuk saya ...
DILIP KOSURI
86

Untuk npm startmenjalankannya, saya harus memastikan bahwa saya telah menginstal secara global beberapa devDependencies. Sudahkah Anda mencoba:

  • npm install -g concurrently
  • npm install -g lite-server
  • npm install -g typescript
Derek Lawless
sumber
tetapi saya pikir lite-serveradalah opsional, Anda juga dapat menggunakan layanan lain
Pardeep Jain
11
Bekerja untuk saya. sudo npm update -g && sudo npm install -g concurrently lite-server typescript.
Sam Finnigan
6
jangan lupa untuk menghapus versi lokal:npm uninstall lite-server
Aurelien
1
Saya memiliki masalah yang sama saat memulai server web menggunakan angular2-seed dari kursus Udemy. Ini telah memperbaiki masalah saya.
dance2die
Iya! menginstal lite-server secara global dan menghapus paket lokal akhirnya berhasil untuk saya di Vagrant! Terima kasih banyak!
Yahya Uddin
48

Pertama, Anda perlu memperbarui npm, lite-server dan ketikan:

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

Hapus folder node_modules dari direktori proyek Angular Anda (jika ada). Jalankan selanjutnya:

npm install

Setelah itu mengatasi kesalahan ENOSPC:

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

Akhirnya:

npm start

Ini adalah file package.json saya:

{
  "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"
  }
}

Tomek Miszczyk
sumber
3
Saya memberi suara positif karena ini memperbaiki masalah saya. Namun saya ingin memahami bagaimana menambahkan fs.inotify.max_user_watches ke / etc / sysctl memperbaikinya.
Joshua Wilson
Tampaknya pengamat membutuhkan lebih banyak memori dan ini menyediakan itu.
Joshua Wilson
Saya merasa ini bekerja lebih baik ketika saya menghapus modul terlebih dahulu - rm -r node_modules/. Pokoknya seperti yang dikatakan pria itu, itu membuat saya pergi; Aku merasa itu fs.inotify.max_user_watches=524288tampak berlebihan bagiku. Apakah ada peningkatan kewarasan dalam angin?
akan
Perlu ditambahkan bahwa panduan mulai cepat Javascript dijalankan begitu saja. Tidak ada tambahan yang besar. Dan ketika server menghentikan halaman web stays on screen. Versi skrip hanya menghilang dengan kepulan asap
akan
ini telah menyelamatkan saya, terima kasih. echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
chintan adatiya
15

Saya mengalami kesalahan yang sama pada windows 10. Sepertinya itu masalah dengan paket npm secara bersamaan. Saya menemukan 2 opsi bagaimana mengatasi kesalahan ini:

  • 1. Jalankan kedua perintah dalam 2 cmds terpisah:

    • dalam sesi pertama: npm run tsc:w
    • yang kedua: npm run lite
  • 2. Ganti package.json

    • ubah saja opsi mulai menjadi ini: "start": "tsc && npm run tsc:w | npm run lite",
dontHaveName
sumber
2
Sekadar catatan. Di Linux:"start": "tsc && npm run tsc:w & npm run lite",
ACV
Yah, itu otomatis dikompilasi ulang untuk saya.
dontHaveName
Saya mengacu pada komentar pertama saya :) di linux tidak akan berhasil
ACV
Hanya solusi ini yang berhasil untuk saya. Mencoba dulu (menjalankan kedua perintah dalam 2 cmds terpisah). Kemudian hentikan proses di kedua cmds. Terakhir terapkan yang kedua (ubah package.json) dan jalankan "npm start" dalam satu cmd saja. Jika saya mengubah satu file, secara otomatis localhost: 3000 menyegarkan dan menunjukkan perubahan saya. Terima kasih banyak!
Andrew F.
13

Inilah cara saya memecahkan masalah hari ini setelah berjam-jam mencoba semua solusi berbeda ini - (untuk siapa pun yang masih mencari cara lain).

Buka 2 contoh cmd di direktori quickstart Anda:

jendela # 1:

npm run build:watch

kemudian...

jendela # 2:

npm run serve

Ini kemudian akan terbuka di browser dan berfungsi seperti yang diharapkan

DeclanPossnett
sumber
9

Saya memiliki masalah serupa setelah menyalin folder angular2-quickstart (termasuk node_modules) untuk membuat folder angular2-tour-of-Heroes. Ini aneh karena aslinya sedang dikompilasi dengan baik tetapi salinannya tidak ...

npm run tsc

Saya dapat menyelesaikan masalah dengan menghapus folder node_modules dan menjalankan kembali npm install .

Ini mengejutkan saya, jadi saya melakukan perbedaan antara 2 folder ...

diff -rw angular2-quickstart/node_modules/ angular2-tour-of-heroes/node_modules/

ada BANYAK perbedaan, banyak 'where' diffs di file package.json seperti ini: -

diff -rw angular2-quickstart/node_modules/yargs/package.json angular2-tour-of-heroes/node_modules/yargs/package.json
5c5
<       "/Users/michael/Tutorials/angular2/angular2-quickstart/node_modules/lite-server"
---
>       "/Users/michael/Tutorials/angular2/angular2-tour-of-heroes/node_modules/lite-server"

... yang masuk akal tetapi ada juga yang seperti ini: -

diff -rw angular2-quickstart/node_modules/utf-8-validate/build/gyp-mac-tool angular2-tour-of-heroes/node_modules/utf-8-validate/build/gyp-mac-tool
607c607,608
<       return {k: self._ExpandVariables(data[k], substitutions) for k in data}
---
>       return dict((k, self._ExpandVariables(data[k],
>                                             substitutions)) for k in data)

... yang saya tidak mengerti sama sekali.

Baiklah, Semoga ini membantu.

Michael Dausmann
sumber
5

Ubah bidang mulai di package.json dari:

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" "

Untuk:

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

Ini sangat membantu.

Joseph
sumber
5

Jawaban ini berkaitan dengan kursus Pluralsight yang sangat baik "Angular 2 Fundamentals" oleh Jim Cooper.

Jika seperti saya, Anda mengalami kesulitan untuk mulai menjalankan perintah npm start pada mesin Windows 10 maka saya sarankan yang berikut:

Mulai git bash sebagai administrator (ikuti langkah-langkah di video) Arahkan ke direktori proyek ( ng2-fundamentals ) lalu ketik perintah berikut:

npm config get registry

npm cache clean

npm install

Setelah instalasi selesai, Anda perlu memodifikasi file get-shell.js yang terletak di modul spawn-default-shell di dalam folder node_modules sebagai berikut:

Ubah hal berikut:

const DETECT_SH_REGEX = /sh$/;

untuk ini:

const DETECT_SH_REGEX = /sh/;

Perhatikan $ dihapus dari akhir string sh (kredit untuk penulis asli dari perbaikan ini alfian777 yang memposting solusi di github )

Simpan file dan kemudian pergi ke konsol git bash Anda dan ketik npm start

Anda seharusnya tidak melihat kesalahan apa pun sekarang dan halaman localhost akan mulai di browser default Anda (sebagai alternatif buka browser Anda dan arahkan ke http: // localhost: 8808 / ).

Tahir Khalid
sumber
3

Tak satu pun dari jawaban ini membantu Ubuntu . Akhirnya saya menemukan solusi dari John Papa (penulis lite-server).

Di Ubuntu 15.10, Mulai Cepat Angular 2 mulai hidup setelah menjalankan ini di terminal:

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

Rupanya itu meningkatkan jumlah Jam Tangan File yang tersedia.

Sumber Jawaban: https://github.com/johnpapa/lite-server/issues/9

Paul Lockwood
sumber
3

Saya mengalami masalah yang sama. Namun, tidak ada jawaban di atas yang merupakan solusi tepat untuk saya. Ternyata itu lebih disebabkan oleh lingkungan pengembang saya daripada versi apa pun.

Karena saya menggunakan Visual Studio Code, saya menyiapkan tugas build di VSC untuk mengkompilasi TypeScript sebagai pengamat. Inilah masalahnya. VSC telah memulai tugas NPM untuk TSC dan saat menjalankan skrip 'start' tutorial, ada masalah dengan fakta bahwa VSC masih berjalan tsc -w.

Saya menghentikan tugas di VSC dan memutar ulang skrip 'mulai' dan itu bekerja dengan baik.

Solusi A: Hentikan dan mulai npm

  • VSC Command> Tasks: Hentikan tugas yang sedang berjalan
  • Terminal $ npm start

Setelah itu untuk menyatukan semuanya, saya mengubah skrip start menjadi hanya memulai server dan tidak benar-benar meluncurkan TSC.

Solusi B: Ubah skrip mulai npm

  • Menggantikan

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

  • dengan

    "start": "npm run lite"

Solusi C: Jalankan saja perintah lite server

`npm run lite`
Itanex
sumber
3

Saya memecahkan masalah saya dengan program Mulai Cepat dengan mengikuti tautan di bawah ini.

Angular 2 Kesalahan QuickStart Live-server

Ubah Package.jsonPengaturan Skrip

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\",

untuk:

"start": "concurrently \"npm run tsc:w\" \"npm run lite\" ",
Saliya Wicky
sumber
2

Jawaban ini hanya untuk pengguna Windows 10 dan seperti yang akan Anda lihat di bawah ini, saya curiga masalahnya hanya terjadi untuk pengguna tersebut:

Untuk mengetahui apa yang terjadi, Anda dapat menjalankan perintah di PowerShell dan ini akan memberi tahu Anda apa masalah sebenarnya:

PS C:\Users\Laurent-Philippe> tsc && concurrently "tsc -w" "lite-server"
At line:1 char:5
+ tsc && concurrently "tsc -w" "lite-server"
+     ~~
The token '&&' is not a valid statement separator in this version.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : InvalidEndOfLine

Pada dasarnya, pesan tersebut menjelaskan bahwa token "&&" belum valid dengan Windows 10. Dan bagi mereka yang bertanya-tanya, perintah yang sama menggantikan && dengan &, memberi tahu kami bahwa operator ampersand dicadangkan untuk penggunaan di masa mendatang:

 (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it as part of a string.

Kesimpulan :

  • jika Anda ingin meluncurkan perintah ini secara manual dari PowerShell, Anda dapat menggunakan ini sebagai gantinya:

    tsc "&" secara bersamaan "tsc -w" "lite-server"

  • jika Anda ingin meluncurkan aplikasi Anda dengan npm start, ganti baris mulai di package.json Anda dengan:

    "start": "tsc & bersamaan \" tsc -w \ "\" lite-server \ ""

  • alternatifnya, jawaban pengguna60108 juga berfungsi karena dia tidak menggunakan ampersand:

    "start": "secara bersamaan \" npm jalankan tsc: w \ "\" npm run lite \ ""

Laurent-Philippe Albou
sumber
1

Kemungkinan besar versi NPM Anda sudah lama, baru-baru ini saya memilikinya di mesin pengembang yang sedang bekerja, ketik:

npm -v

Jika ada yang kurang dari versi stabil saat ini, dan Anda dapat memperbarui pemasangan Node.js Anda dari sini https://nodejs.org/en/ :)

NewZeroRiot
sumber
1

Ini berhasil bagiku, put /// <reference path="../node_modules/angular2/typings/browser.d.ts" /> di bagian atas file bootstraping.

Sebagai contoh:-

Di boot.ts

/// <reference path="../node_modules/angular2/typings/browser.d.ts" />
import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.component'

bootstrap(AppComponent);

Catatan: - Pastikan Anda telah menyebutkan jalur referensi yang benar .

vineet
sumber
1
  1. Dalam ketikan devDependencies adalah 1.7.3 tetapi Anda memiliki 1.7.5 memperbaiki yang umum.
  2. Impor file js Anda dalam urutan yang benar di index.html. untuk info lebih lanjut lihat repositori ini https://github.com/pkozlowski-opensource/ng2-play/blob/master/index.html atau lihat repositori saya di sini

    https://github.com/MrPardeep/Angular2-DatePicker

index.html

<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="node_modules/es6-shim/es6-shim.min.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>

    <script>
        System.config({
                    defaultJSExtensions: true,
                    map: {
                        rxjs: 'node_modules/rxjs'
                    },
                    packages: {
                        rxjs: {
                        defaultExtension: 'js'
                      }
                    }
                });
    </script>
    <script src="node_modules/angular2/bundles/angular2.dev.js"></script>
    <script src="node_modules/rxjs/bundles/Rx.js"></script>
    <script src="node_modules/angular2/bundles/router.dev.js"></script>
    <script src="node_modules/angular2/bundles/http.dev.js"></script>

<script>
    System.import('dist/bootstrap');
</script> 
Pardeep Jain
sumber
Terima kasih atas tayangan ulang Anda tetapi tidak menyelesaikan masalah saya :)
Tomasz Ciunel
daripada yang dikatakan @Eric, periksa versi node Anda, seharusnya antara 4 * 5 dan versi npm harus antara 2 * 3. atau posting struktur proyek Anda, ini akan membantu saya untuk menemukan masalahnya.
Pardeep Jain
Terima kasih! Ini berhasil untuk saya. Tautan ini khususnya: github.com/pkozlowski-opensource/ng2-play/blob/master/…
brando
selamat datang :) link ini sangat berguna untuk startup di angular2 beta0.0.
Pardeep Jain
0

Saya bisa mereproduksi langkah tanpa masalah.

Silakan coba:

(1) hapus baris ini dari index.html Anda

<script src="node_modules/es6-shim/es6-shim.js"></script>

(2) ubah file: app.components.ts , hapus "," di akhir baris di bidang templat

@Component({
    selector: 'my-app',
    template: '<h1>My First Angular 2 App</h1>'
})

Ini lingkungan saya:

$ node -v
v5.2.0

$ npm -v
3.3.12

$ tsc -v
message TS6029: Version 1.7.5

Silakan lihat repo ini untuk pekerjaan saya: https://github.com/AlanJui/ng2-quick-start

AlanJui
sumber
jika kami menggunakan ,di akhir template saya tidak menghasilkan masalah. dan bagaimana proyek dapat berjalan tanpaes6-shim
Pardeep Jain
0

Menginstal paket secara global adalah salah satu cara untuk melakukannya, tetapi ini membatasi Anda untuk menggunakan versi yang sama di semua proyek tempat paket tersebut digunakan.

Sebagai gantinya, Anda dapat mengawali skrip npm Anda dengan ./node_modules/.bin. Dalam kasus Anda, package.jsonakan terlihat seperti ini:

{
  "name": "reservationsystem",
  "version": "0.0.1",
  "scripts": {
    "tsc": "./node_modules/.bin/tsc",
    "tsc:w": "npm run tsc -w",
    "lite": "./node_modules/.bin/lite-server",
    "start": "./node_modules/.bin/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"
  }
}

Saya pikir npm seharusnya menyediakan ./node_modules/.bindi depan setiap perintah "script" yang ada di direktori itu secara default, itulah sebabnya yang asli package.jsonterlihat seperti itu. Saya tidak yakin apakah fitur itu ada di setiap rilis npm, atau jika ada beberapa pengaturan konfigurasi yang harus Anda tentukan. Layak untuk dilihat!

BrianRT
sumber
0

Saya mengalami masalah yang sama, kami berdua lupa menyertakan 's' pada komponen di sini:

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

Seharusnya:

boot.js:

import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.components'

bootstrap(AppComponent);
Jim Factor
sumber
ini tidak benar, mengikuti contoh, seharusnya tidak ada 's' di app.component
Brad Woods
0

Saya memiliki kesalahan yang sama pada OS X (node ​​v6.2.0 dan npm v3.9.3 diinstal dengan homebrew) dan itu tidak diselesaikan oleh salah satu hal di atas. Saya harus menambahkan path lengkap ke perintah yang dijalankan secara bersamaan.

Di package.json, saya mengubah ini:

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",

untuk ini:

"start": "tsc && concurrently \"/Users/kyen/.node/bin/npm run tsc:w\" \"/Users/kyen/.node/bin/npm run lite\" ",

Anda tentu saja perlu memperbarui jalur yang benar berdasarkan di mana biner global node Anda disimpan. Perhatikan bahwa saya tidak perlu menambahkan jalur ke perintah tsc pertama. Tampaknya hanya membutuhkan jalur lengkap yang ditentukan secara bersamaan.

kyen99
sumber
0

Saya menemui kesalahan yang sama. Dan setelah banyak mencari, akhirnya saya menemukan yang ini: Aplikasi Angular2 install & dijalankan melalui package.json . Lalu saya coba ganti

"scripts": { "start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ", "lite": "lite-server", "postinstall": "typings install", "tsc": "tsc", "tsc:w": "tsc -w", "typings": "typings" }, untuk

"scripts": { "start": "concurrently \"npm run tsc:w\" \"npm run lite\" ", "lite": "lite-server", "postinstall": "typings install", "tsc": "tsc", "tsc:w": "tsc -w", "typings": "typings" },

Semoga membantu yang mendapatkan kesalahan yang sama.

PS: Kesalahan saya tidak sama dengan Tomasz, yaitu versi npm saya 3.7.3 dan versi node 5.9.1.

Beck
sumber
0

Hapus semua paket node yang ada. Perbarui node dan npm. Seperti yang diberikan dalam dokumentasi setidaknya sebagai node v5.xx dan npm 3.xx, jika tidak maka akan menyebabkan kesalahan.

Lakukan npm clean. Kemudian lakukan npm install, npm start.

Ini memecahkan masalah saya.

Ajith Thomas
sumber
ini tidak benar, statistik dokumentasi setidaknya node v4.xx angular.io/docs/ts/latest/…
Brad Woods
0

Untuk pengguna Ubuntu 16.x, menginstal versi terbaru 5.x memecahkan masalah saya di ubuntu

curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
sudo apt-get install -y nodejs
Subrata Mazumder
sumber
0

Tampaknya ada lebih dari satu cara di mana angular2-quickstart bisa gagal untuk memulai. Saya memiliki masalah yang sama menjalankan Angular2 versi 2.0.0 di bawah penginstalan baru node 6.6.0 / npm 3.10.3 di Windows 7. Dalam kasus saya menjalankan npm startbanyak kesalahan skrip ketikan:

c:\git\angular2-quickstart>npm start

> angular2-quickstart@1.0.0 start c:\git\angular2-quickstart
> tsc && concurrently "npm run tsc:w" "npm run lite"

node_modules/@angular/common/src/directives/ng_class.d.ts(46,34): error TS2304: Cannot find name 'Set'.
node_modules/@angular/common/src/pipes/async_pipe.d.ts(39,38): error TS2304: Cannot find name 'Promise'.
(...)

Masalah ini dibahas dalam masalah mulai cepat bersudut # 63, "ketikan" tidak diinstal dengan benar . Tiket itu memberi perbaikan sebagai

$ ./node_modules/.bin/typings install

yang berhasil untuk saya. (Saya belum yakin dengan cara yang "benar" untuk melakukan ini.)

Robert Calhoun
sumber
0

Pastikan nama-nama yang benar, sehingga mengubah componentdalam boot.js untuk components. masukkan deskripsi gambar di sini

juragan
sumber
0

Di file package.json, saya menghapus baris yang memiliki "prestart": "npm run build". Ini tampaknya merupakan perintah pemblokiran, dan terjadi sebelum (npm) mulai, sehingga mencegah perintah mulai lainnya.

SimonInOz
sumber
0

Ubah start di angular.json ke salah satu "start": "ng serve --host 0.0.0.0"atau "start": "lite-server"dan jalankan. Periksa juga apakah Anda telah menginstal angular / cli dengan benar atau belum.

Alekya
sumber
0

Saya memulai tutorial cepat saya melalui langkah-langkah sampai npm start. Lalu saya mendapat kesalahan ini. Kemudian saya menghapus node_modulesfolder di bawah angular-quickstartdan menjalankannya npm installlagi. Sekarang berhasil.

Edi
sumber
0

Jika Anda menggunakan proxy, ini dapat menyebabkan kesalahan ini:

  1. npm config set proxy http://username:pass@proxy:port

  2. npm config set https-proxy http://username:pass@proxy:port

  3. buat file bernama .typingsrcdalam folder aplikasi Anda yang mencakup:

    • proxy = (nilai pada langkah 1)
    • https-proxy = (nilai pada langkah 1)
  4. Lari npm cache clean

  5. Lari npm install
  6. Lari npm typings install
  7. Lari npm start

itu akan berhasil

kubra
sumber
Tidak, terus mendapatkan: kesalahan TS5023: Opsi kompiler tidak dikenal 'moduleResolution'.
Christof Kälin