Angular 4路由

Dav*_*983 5 routing typescript angular

人们可以停止建议使用angular-4路由标记此帖子吗?我知道那个标签.然而,我的问题与Angular 4的路由无关 - 这是一个错误的问题因为我不明白当时发生了什么.这里的解决方案不会帮助那些希望获得实际Angular 4路由帮助的人,所以我不同意它应该被标记为这样,我将继续拒绝这种改动.我重申:尝试使用标准托管包启动一个有角度的网络应用程序是错误的,而没有先了解PHP,nodejs,dist文件夹和其他一些东西.我看到很多人犯了类似的错误,但是他们需要知道这不是路由问题,而是一个不知道关于网站的问题,他们应该像我一样做,然后扣下来学习东西.

我的角度4路由不起作用.

  • Angular 4路由与Angular 2不同.请只能遇到类似问题的人使用Angular 4评论.似乎有很多变化,我按照2017年的指导方针设置了我的路线.将旧解决方案标记为此只会让人感到困惑和无益 - 特别是因为我是Angular的新手并且只有4的经验.我不想使用HashLocationStrategy*

我可以导航到我的域,然后使用我的菜单组件在页面之间导航,但是当我输入mydomain/home时,我看到一个空白页面.看起来其他人问过有关Angular早期版本的类似问题,但我看不到任何人有更新的设置.

我有

import { routes } from './app.router';
Run Code Online (Sandbox Code Playgroud)

在app.module.ts中

import { ModuleWithProviders } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { HomeComponent } from './home/home.component';
import { ArtComponent } from './art/art.component';
import { MusicComponent } from './music/music.component';
import { EventsComponent } from './events/events.component';

export const router: Routes = [
    { path: '', redirectTo: 'home', pathMatch: 'full'},
    { path: 'home', component: HomeComponent },
    { path: 'art', component: ArtComponent },
    { path: 'music', component: MusicComponent },
    { path: 'events', component: EventsComponent }
];

export const routes: ModuleWithProviders = RouterModule.forRoot(router);
Run Code Online (Sandbox Code Playgroud)

在app.router.ts中

我担心我对Angular很新!

这些是Chrome Inspector中的错误:

polyfills.71b130084c52939ca448.bundle.js:1 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.
(anonymous) @ polyfills.71b130084c52939ca448.bundle.js:1
firebug-lite.js:30396 [Deprecation] 'window.webkitStorageInfo' is deprecated. Please use 'navigator.webkitTemporaryStorage' or 'navigator.webkitPersistentStorage' instead.
getMembers @ firebug-lite.js:30396
home Failed to load resource: the server responded with a status of 404 ()
Run Code Online (Sandbox Code Playgroud)

我已经将这个问题缩小到类似于这里的构建问题:https://github.com/angular/angular-cli/issues/5113

这个问题似乎没有一个令人满意的答案 - 如果有人能告诉我在哪里指出我的--base-href来使我的构建工作?

Dav*_*983 2

我的 Angular 代码结果没问题。问题出在我的托管提供商的服务器上。我需要在我的 dist 包中包含一个 .htaccess 文件