Angular2 QuickStart npm start düzgün çalışmıyor


105

Dosya yapısı

Angular2 beta'nın piyasaya sürüldüğünü biliyorum, ancak resmi site eğitimindeki ( https://angular.io/guide/quickstart ) adımları yeniden oluşturamıyorum . Belki birinin benzer sorunları olmuştur ve bunu düzeltmek için ne yapacağını biliyordur? Uygulamayı npm startkomutla başlatmaya çalıştığımda şu şekilde çıktı alıyorum:

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 ]

Sahip oldum: typcript 1.7.5 sürüm düğümü 0.12.2 sürümü

Belki birisi sorunu çözmeye yardımcı olabilir :)?

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);

Gönderinizi dosyalarınızla birlikte düzenler misiniz lütfen?
Romain

Klasör yapınız nedir? index.html içinde mi app/yoksa dışında mı?
the_critic

Birincisi, dosya boot.js daktilo dosya olarak yeniden adlandırın olmalıdır boot.ts . Yanlış görünen başka bir şey görmüyorum ... The_critic'in dediği gibi , bize proje yapınızı verebilir misiniz?
Romain

Bu boot.ts. Stackoverflow'da yanlışlıkla buraya 'js' yazdım - üzgünüm. Index html, örneğin package.json benzeri kök üzerindedir. Uygulama / dizinde değil.
Tomasz Ciunel

2
Düğüm sürümünüzün olduğundan >=4.2.1 <5ve npm sürümünüzün DEVELOPER kılavuzunda>=2.14.7 <3.0 belirtildiği gibi olduğundan emin olun . Sanırım 5. düğümle çalışmasını sağlayabilirsiniz, ancak nasıl olduğunu bilmiyorum.
Eric Martinez

Yanıtlar:


224

startPackage.json'daki alanı şundan değiştirin :

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

-e

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

2
Neden tsc'yi iki kez ( tscve tsc -w) çalıştırdı ?
smartmouse

9
İşe yaradı! Ama neden? Ng2'de cesareti kırılmaya başladı.
Maxim

9
Pluralsight Ward Bell'deki "oynayarak açısal 2 hızlı başlangıç" kursunda bunu açıklıyor. "tsc" önce kodu derler, çünkü bu olmadan, daha büyük bir projede sunucunun derleme bitmeden başlaması mümkündür. Bu durumda sunucu, ne yapacağını bilmediğini belirten bir hata verir.
Starceaker

1
2017'de, cevabınızdaki geçici çözümünüz gerçek sorunu ortaya çıkardı, bu da uygulama kodundaki yazı dizisinde derleme hataları olmasıydı. Derleme hatalarını düzelttiğimde, orijinal sürüm artık geçici çözümünüz olmadan iyi çalıştı.
CodeMed

1
Mükemmel ... "start": "eşzamanlı olarak \" npm run tsc: w \ "\" npm run lite \ "" benim için çalıştı ...
DILIP KOSURI

86

npm startBenim için koşmaya başlamak için, devDependency'lerin bazılarını küresel olarak kurduğumdan emin olmalıydım. Denedin mi:

  • npm install -g concurrently
  • npm install -g lite-server
  • npm install -g typescript

ancak lite-serveristeğe bağlı olduğunu düşünüyorum , diğer hizmetleri de kullanabilirsiniz
Pardeep Jain

11
Benim için çalıştı. sudo npm update -g && sudo npm install -g concurrently lite-server typescript.
Sam Finnigan

6
yerel sürümü kaldırmayı unutmayın:npm uninstall lite-server
Aurelien

1
Udemy kursundan angular2-seed kullanarak web sunucusunu başlatırken de aynı sorunu yaşadım. Bu, sorunumu çözdü.
dance2die

Evet! lite sunucusunu global olarak kurmak ve yerel paketi kaldırmak, sonunda benim için Vagrant üzerinde çalıştı! Çok teşekkürler!
Yahya Uddin

48

Öncelikle npm, lite-server ve typcript'i güncellemeniz gerekir:

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

Angular proje dizininizden (varsa) node_modules klasörünü silin. Sonraki çalıştırma:

npm install

Bundan sonra ENOSPC hatalarını çözün:

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

En sonunda:

npm start

Bu benim package.json dosyam:

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


3
Oy verdim çünkü bu benim sorunumu çözdü. Bununla birlikte fs.inotify.max_user_watches'ı / etc / sysctl'e eklemenin sorunu nasıl çözdüğünü anlamak isterim.
Joshua Wilson

Görünüşe göre izleyicinin daha fazla belleğe ihtiyacı var ve bu da bunu sağlıyor.
Joshua Wilson

İlk önce modülleri sildiğimde daha iyi çalıştığını fark ettim - rm -r node_modules/. Her neyse, adamın dediği gibi, beni harekete geçirdi; Bunu vurdu ediyorum fs.inotify.max_user_watches=524288gerçi bana aşırı görünüyor. Rüzgarda gelişmiş akıl sağlığı var mı ?
olacak

Javascript hızlı başlangıcının kutudan çıkar çıkmaz çalışmaya başladığını eklemeye değer . YOK büyük ekstralar. Ve sunucu web sayfasını durdurduğunda stays on screen. Daktilo versiyonu 404 dumanla
olacak

bu beni kurtardı, teşekkür ederim. echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
chintan adatiya

15

Windows 10'da da aynı hatayı aldım. Eşzamanlı olarak npm paketi ile ilgili sorun gibi görünüyor. Bu hatayı çözmek için 2 seçenek buldum:

  • 1. Her iki komutu da 2 ayrı cmds'de çalıştırın:

    • ilk seferde: npm run tsc:w
    • ikincisinde: npm run lite
  • 2. Değiştir package.json

    • sadece başlangıç ​​seçeneğini bununla değiştirin: "start": "tsc && npm run tsc:w | npm run lite",

2
Sadece not etmek için. Linux'ta:"start": "tsc && npm run tsc:w & npm run lite",
ACV

Benim için otomatik olarak yeniden derleniyor.
dontHaveName

İlk yorumuma atıfta bulunuyordum :) linux için işe yaramayacak
ACV

Sadece bu çözüm benim için çalıştı. İlk denendi (her iki komutu da 2 ayrı cmd'de çalıştırın). Sonra işlemi her iki cmd'de durdurdu. Son olarak ikinciyi (paket.json değiştir) uygulayın ve yalnızca bir cmd'de "npm start" komutunu çalıştırın. Bir dosyayı değiştirirsem, otomatik olarak localhost: 3000 yeniler ve değişikliklerimi gösterir. Çok teşekkürler!
Andrew F.

13

İşte bu farklı çözümleri saatlerce denedikten sonra bugün sorunu nasıl çözdüğüm - (başka bir yol arayanlar için).

Hızlı başlangıç ​​dizininizde 2 cmd örneği açın:

1. pencere:

npm run build:watch

sonra...

pencere # 2:

npm run serve

Daha sonra tarayıcıda açılacak ve beklendiği gibi çalışacaktır.


9

Angular2-tour-of-heroes klasörünü oluşturmak için angular2-quickstart klasörünü (node_modules dahil) kopyaladıktan sonra benzer bir sorun yaşadım. Bu garipti çünkü orijinal iyi derliyordu ama kopya ...

npm run tsc

Ben sorunu çözmek başardı klasörüne yükleyin npm yeniden çalıştırmayı node_modules silme .

Bu benim için bir sürprizdi, bu yüzden 2 klasör arasında bir fark yaptım ...

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

Bir çok farklılık vardı, package.json dosyalarında bunun gibi birçok 'nerede' fark var: -

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"

... bu mantıklı ama bunun gibi bazıları da vardı: -

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)

... hiç anlamadığım.

Umarım bu yardımcı olur.


5

Package.json'daki başlangıç ​​alanını şundan değiştirin:

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

Kime:

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

Gerçekten yardımcı oldu.


5

Bu cevap, Jim Cooper'ın mükemmel Pluralsight kursu "Angular 2 Fundamentals" ile ilgilidir.

Benim gibi, bir Windows 10 makinesinde npm start komutunu çalıştırırken sorun yaşıyorsanız, aşağıdakileri öneririm:

Git bash'ı yönetici olarak başlatın ( videodaki adımları izleyin) Proje dizinine gidin ( ng2-fundamentals ) ve ardından aşağıdaki komutları yazın:

npm config get registry

npm cache clean

npm install

Kurulum tamamlandıktan sonra, node_modules klasörünün içindeki spawn-default-shell modülünde bulunan get-shell.js dosyasını aşağıdaki gibi değiştirmeniz gerekecektir:

Aşağıdakileri değiştirin:

const DETECT_SH_REGEX = /sh$/;

buna:

const DETECT_SH_REGEX = /sh/;

(Üzerinde çözüm yayınlanmıştır kim alfian777 Bu düzeltmenin özgün yazar kredi sh dizenin sonuna kaldırıldı $ Not github )

Dosyayı kaydedin ve git bash konsolunuza gidin ve npm start yazın

Şu anda herhangi bir hata görmemelisiniz ve localhost sayfası varsayılan tarayıcınızda başlayacaktır (alternatif olarak tarayıcınızı açın ve http: // localhost: 8808 / adresine gidin ).


3

Bu yanıtların hiçbiri Ubuntu'ya yardımcı olmadı . Sonunda John Papa'dan (lite-server'ın yazarı) bir çözümle karşılaştım.

Ubuntu 15.10'da, Angular 2 Hızlı Başlangıç, bunu terminalde çalıştırdıktan sonra hayata geçti:

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

Görünüşe göre mevcut Dosya İzleme sayısını artırıyor.

Yanıt Kaynağı: https://github.com/johnpapa/lite-server/issues/9


3

Aynı sorunla karşılaştım. Ancak yukarıdaki cevapların hiçbiri benim için uygun çözümler değildi. Görünüşe göre daha çok şeylerin sürümlerinden daha çok geliştirme ortamımdan kaynaklanıyordu.

Visual Studio Code kullandığım için, TypeScript'i bir watcher olarak derlemek için VSC'de bir build görevi kuruyorum. Sorun buydu. VSC zaten TSC için bir NPM görevi başlatmıştı ve bu nedenle öğreticinin 'başlat' komut dosyasını çalıştırırken, VSC'nin hala çalışıyor olması gerçeğiyle ilgili sorunlar yaşıyordu tsc -w.

Görevi VSC'de durdurdum ve 'başlangıç' komut dosyasını yeniden çalıştırdım ve gayet iyi çalıştı.

Çözüm A: Durdur ve npm Başlat

  • VSC Komutu> Görevler: Çalışan görevleri sonlandırın
  • Terminal $ npm start

Bundan sonra her şeyi bir araya getirmek için başlangıç ​​komut dosyasını TSC'yi gerçekten başlatmak yerine sunucuyu başlatacak şekilde değiştiriyorum.

Çözüm B: npm başlangıç ​​komut dosyasını değiştirin

  • Değiştir

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

  • ile

    "start": "npm run lite"

Çözüm C: Sadece lite server komutunu çalıştırın

`npm run lite`

3

Aşağıdaki bağlantıyı takip ederek sorunumu Hızlı Başlangıç ​​programı ile çözdüm.

Angular 2 QuickStart Live-sunucu hatası

Package.jsonKomut Dosyası Ayarlarını Değiştirin

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

to:

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

2

Bu yanıt yalnızca Windows 10 kullanıcıları içindir ve aşağıda göreceğiniz gibi, sorunun yalnızca bu kullanıcılar için oluştuğundan şüpheleniyorum:

Neler olduğunu öğrenmek için PowerShell'de komutu çalıştırabilirsiniz ve size asıl sorunun ne olduğunu söyleyecektir:

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

Temel olarak, mesaj "&&" simgesinin henüz Windows 10 ile geçerli olmadığını açıklıyor. Merak edenler için, && yerine & ile aynı komut, ve işareti operatörünün gelecekte kullanılmak üzere ayrıldığını bildirdi:

 (&) 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.

Sonuçlar :

  • bu komutu powershell'den manuel olarak başlatmak istiyorsanız, bunun yerine bunu kullanabilirsiniz:

    tsc "&" eşzamanlı olarak "tsc -w" "lite-server"

  • Uygulamanızı npm start ile başlatmak istiyorsanız, package.json dosyanızdaki başlangıç ​​satırını şu şekilde değiştirin:

    "start": "tsc & eşzamanlı olarak \" tsc -w \ "\" lite-server \ ""

  • alternatif olarak, user60108'in yanıtı da işe yarar çünkü ve işaretini kullanmıyor:

    "start": "aynı anda \" npm run tsc: w \ "\" npm run lite \ ""


1

Büyük olasılıkla NPM sürümünüz eski, bunu yakın zamanda iş yerindeki bir geliştirici makinesinde aldım, şunu yazın:

npm -v

Mevcut kararlı sürümden daha az bir şey varsa ve Node.js kurulumunuzu buradan güncelleyebilirsiniz https://nodejs.org/en/ :)


1

Bu beni çalıştı, koy /// <reference path="../node_modules/angular2/typings/browser.d.ts" /> , önyükleme dosyasının en üstüne .

Örneğin:-

In boot.ts

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

bootstrap(AppComponent);

Not: - Doğru referans yolunu belirttiğinizden emin olun .


1
  1. DevDependencies Typescript'te 1.7.3'tür, ancak 1.7.5'te ortak olanı düzeltebilirsiniz.
  2. Js dosyalarınızı dilinde doğru sırada içe aktarın index.html. daha fazla bilgi için bu depoya bakın https://github.com/pkozlowski-opensource/ng2-play/blob/master/index.html veya buradaki depoma bakın

    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> 


@Eric'in dediği gibi düğüm sürümünüzü kontrol edin 4 * 5 ve npm sürümü 2 * 3 arasında olmalıdır. veya proje yapınızı postalayın, sorunu bulmama yardımcı olacaktır.
Pardeep Jain

Teşekkür ederim! Bu benim için çalıştı. Bu bağlantı özellikle: github.com/pkozlowski-opensource/ng2-play/blob/master/…
brando

rica ederim :) bu bağlantı angular2 beta0.0'da başlangıç ​​için çok kullanışlıdır.
Pardeep Jain

0

Adımları sorunsuz bir şekilde yeniden üretebilirim.

Deneyin lütfen:

(1) bu satırı index.html'nizden kaldırın

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

(2) dosyayı değiştir: app.components.ts , şablon alanındaki satırın sonunda "," silin

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

İşte ortamım:

$ node -v
v5.2.0

$ npm -v
3.3.12

$ tsc -v
message TS6029: Version 1.7.5

Lütfen çalışmam için bu depoya bakın: https://github.com/AlanJui/ng2-quick-start


,şablonun sonunda kullanırsak sorun çıkarmadım. ve proje olmadan nasıl çalışabilires6-shim
Pardeep Jain


0

Paketleri global olarak kurmak, bunu yapmanın bir yoludur, ancak bu, kullanıldıkları tüm projelerde aynı sürümü kullanmanızı kısıtlar.

Bunun yerine, npm komut dosyalarınızın önüne ./node_modules/.bin. Sizin durumunuzda, package.jsonşuna benzer:

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

Bence npm, varsayılan olarak ./node_modules/.bino dizinde bulunan her "betik" komutunun önünü sağlaması gerekiyor , bu yüzden orijinalin olduğu gibi package.jsongörünüyordu. Bu özelliğin her npm sürümünde olup olmadığından veya belirtmeniz gereken bazı yapılandırma ayarları olup olmadığından emin değilim. Araştırmaya değer!


0

Aynı sorunu yaşadım, ikimiz de bileşenlere 's' harfini eklemeyi unuttuk:

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

Olmalı:

boot.js:

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

bootstrap(AppComponent);

bu doğru değil, örneğe göre, app.component'te 's' olmamalı
Brad Woods

0

OS X'te de aynı hatayı aldım (homebrew ile yüklenmiş düğüm v6.2.0 ve npm v3.9.3) ve yukarıdakilerden herhangi biri tarafından çözülmedi. Aynı anda çalıştırılan komutlara tam yollar eklemek zorunda kaldım.

Package.json'da bunu değiştirdim:

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

buna:

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

Elbette, düğüm genel ikili dosyalarınızın nerede depolandığına bağlı olarak doğru yolları güncellemeniz gerekecektir. İlk tsc komutunun yolunu eklememe gerek olmadığını unutmayın. Sadece eşzamanlı olarak belirtilen tam yollara ihtiyaç duyuyor gibi görünüyor.


0

Ben de aynı hatayla karşılaştım. Ve çok fazla aramadan sonra, sonunda şunu buldum: Angular2 uygulaması, package.json aracılığıyla kurun ve çalıştırın . Sonra değiştirmeye çalıştım

"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" }, -e

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

Umarım aynı hatayı kimin almasına yardımcı olur.

Not: Benim hatam Tomasz ile aynı değil, benim npm sürümüm 3.7.3 ve düğüm sürümü 5.9.1.


0

Mevcut tüm düğüm paketlerini kaldırın. Düğümü ve npm'yi güncelleyin. Dokümantasyonda en az düğüm v5.xx ve npm 3.xx olarak verildiği gibi hatalara neden olacaktır.

Yapın npm clean. O zaman yap npm install,npm start .

Bu benim için sorunu çözdü.


Bu, dokümantasyon istatistikler en az düğüm v4.xx doğru değildir angular.io/docs/ts/latest/...
Brad Woods

0

Ubuntu 16.x kullanıcıları için, en son sürüm 5.x'i yüklemek ubuntu'daki sorunumu çözüyor

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

0

Görünüşe göre, açısal2 hızlı başlangıcı başlatmanın başarısız olabileceği birden fazla yol var . Windows 7'de yeni bir 6.6.0 / npm 3.10.3 düğümü yüklemesi altında Angular2 2.0.0 sürümünü çalıştırırken aynı sorunu yaşadım . Benim durumumda, çalıştırma npm startbir ton daktilo hatası attı:

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'.
(...)

Bu sorun, açısal hızlı başlangıç ​​sorunu # 63'te, "yazımların" doğru şekilde yüklenmemesinde tartışılmaktadır . Bu bilet düzeltmeyi veriyor

$ ./node_modules/.bin/typings install

benim için çalıştı. (Bunu yapmanın "doğru" yolundan henüz emin değilim.)


0

Emin isimleri böylece değişen, doğru olduğundan emin olunuz componentiçinde boot.js için components. görüntü açıklamasını buraya girin



0

Package.json dosyasında bulunan satırı kaldırdım "prestart": "npm run build". Bu bir engelleme komutu gibi görünür ve (npm) başlamadan önce gerçekleşir, böylece diğer başlatma komutlarını engeller.


0

Start'ı angular.json olarak ya "start": "ng serve --host 0.0.0.0"da olarak değiştirin ve çalıştırın. Ayrıca "start": "lite-server"angular / cli'yi doğru şekilde kurup kurmadığınızı kontrol edin.


0

Hızlı başlangıç ​​öğreticisine kadar adımlardan geçtim npm start. Sonra bu hatayı aldım. Sonra node_modulesaltındaki klasörü sildim angular-quickstartve npm installtekrar koştum . Şimdi çalışıyor.


0

Proxy kullanıyorsanız şu hataya neden olabilir:

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

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

  3. .typingsrcuygulama klasörünüzde şunları içeren bir dosya oluşturun :

    • proxy = (1. adımdaki değer)
    • https-proxy = (1. adımdaki değer)
  4. Çalıştırmak npm cache clean

  5. Çalıştırmak npm install
  6. Çalıştırmak npm typings install
  7. Çalıştırmak npm start

o zaman işe yarayacak


Hayır, stille alınıyor: hata TS5023: Bilinmeyen derleyici seçeneği 'moduleResolution'.
Christof Kälin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.