Подтвердить что ты не робот

Angular2 Быстрый старт - сообщение "Не могу получить"

Я пытался сделать краткое руководство для Angular2. Я сделал пример, как указано в кратком руководстве. Однако, когда я запустил его, он отобразил следующее сообщение "Can not Get". Кто-нибудь знает, почему это происходит?

файл boot.js

// JavaScript source code
(function (app) {
    document.addEventListener('DOMContentLoaded', function () {
        ng.platform.browser.bootstrap(app.AppComponent);
    });
})(window.app || (window.app = {}));

Файл app.component.js

(function (app) {
    app.AppComponent = ng.core.Component({
        Selector: 'my-app',
        template: '<h1>My First Angular 2 App </h1>'
    })
    .class({
        constructor: function () { }
    });
})(window.app || window.app == {});

Индексный файл

<html>

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

    <!-- 1. Load libraries -->
    <script src="https://code.angularjs.org/2.0.0-beta.0/angular2-polyfills.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.0/Rx.umd.js"></script>
    <script src="https://code.angularjs.org/2.0.0-beta.0/angular2-all.umd.dev.js"></script>

    <!-- 2. Load our 'modules' -->
    <script src='app/app.component.js'></script>
    <script src='app/boot.js'></script>

</head>

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

</html>

Наконец, файл package.json

{
  "name": "angular2-quickstart",
  "version": "1.0.0",
  "scripts": {
    "start": "npm run lite",
    "lite": "lite-server"
  },
  "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": {
    "lite-server": "^1.3.1"
  }
}

Я запустил строку "npm start", которая открыла браузер и отобразила "Can not Get"

4b9b3361

Ответ 1

Я понял, в чем проблема. У меня было дополнительное место в моем html файле, который вызывал ошибку. Я удалил дополнительное пространство, и он работал, как ожидалось.

Ответ 2

Я получил эту ошибку, когда index.html не был в правильной папке.

Если это так, поместите его в основную корневую папку проекта angular, чтобы устранить эту ошибку.

Ответ 3

Фон

У меня была та же проблема: Cannot GET / pagename на каждой странице. Я искал в Интернете, но не нашел такого решения, как этот.

Мой проект находился внутри папки с пробелами ASCII, так как имя репозитория также содержало пробелы.

Ответ

В папке, в которой находится ваш проект, не должно быть пробела или символа ASCII "%20".

введите описание изображения здесь

После этого изменения мой проект не дал ошибку Cannot GET / pagename.

Ответ 4

У меня была такая же проблема, потому что я забыл добавить файл bs-config.json, который мы можем увидеть в части "Окончательная структура" учебника. Он должен содержать:

{
  "server": {
    "baseDir": "src",
    "routes": {
      "/node_modules": "node_modules"
    }
  }
}

Ответ 5

У меня была такая же проблема с Angular.io example "minimum NgModule" Они дали нам файлы с дополнительным "0" в именах файлов. Я решил проблему, преобразовывая только имя файла "index.0.html" в "index.html" Наконец он работал:)

Ответ 6

Вам нужно запустить команду "ng serve", где находится папка "src".

Ответ 7

Если вы используете маршруты, убедитесь, что у вас есть правильно импортированный компонент, указывающий на "" (/route).

Пример: { path: "", component: MyHomeComponent }

Полный пример app.module.ts в установке Angular 5 (тот же самый из Angular +2...)

import { BrowserModule } from "@angular/platform-browser";
import { NgModule } from "@angular/core";
import { FormsModule } from "@angular/forms";
import { HttpModule } from "@angular/http";
import { Routes, RouterModule } from "@angular/router";

import { AppComponent } from "./app.component";
import { CinemaService } from "./services/cinema.service";
import { MyHomeComponent } from "./components/my-home/my-home.component";
import { MyMovieComponent } from "./components/my-movie/my-movie.component";

const routes: Routes = [
  { path: "", component: MyHomeComponent },
  { path: "movie/:id", component: MyMovieComponent },

];

@NgModule({
  declarations: [
    AppComponent,
    MyHomeComponent,
    MyMovieComponent
  ],
  imports: [
    BrowserModule,
    FormsModule,
    HttpModule,
    RouterModule.forRoot(routes)
  ],
  providers: [CinemaService],
  bootstrap: [AppComponent]
})
export class AppModule { }