[英]Angular2 redirecting to root folder
I am new to Angular 2 and trying to create my first application. 我是Angular 2的新手,正在尝试创建我的第一个应用程序。 I am following this tutorial to develop first application.
我正在按照本教程开发第一个应用程序。 I created application as suggested and my main files are:
我按照建议创建了应用程序,我的主要文件是:
systemjs.config.js systemjs.config.js
(function (global) { System.config({ paths: { // paths serve as alias 'npm:': 'node_modules/' }, // map tells the System loader where to look for things map: { // our app is within the app folder app: 'app', // angular bundles '@angular/core': 'npm:@angular/core/bundles/core.umd.js', '@angular/common': 'npm:@angular/common/bundles/common.umd.js', '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js', '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js', '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js', '@angular/http': 'npm:@angular/http/bundles/http.umd.js', '@angular/router': 'npm:@angular/router/bundles/router.umd.js', '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js', // other libraries 'rxjs': 'npm:rxjs', 'angular2-in-memory-web-api': 'npm:angular2-in-memory-web-api', }, // packages tells the System loader how to load when no filename and/or no extension packages: { app: { main: './main.ts', defaultExtension: 'ts' }, rxjs: { defaultExtension: 'js' }, 'angular2-in-memory-web-api': { main: './index.js', defaultExtension: 'js' } } }); })(this);
main.ts 主要
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app.module'; platformBrowserDynamic().bootstrapModule(AppModule);
app.module.ts app.module.ts
import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { AppComponent } from './app.component'; @NgModule({ imports: [ BrowserModule ], declarations: [ AppComponent ], bootstrap: [ AppComponent ] }) export class AppModule { }
app.component.ts app.component.ts
import { Component } from '@angular/core'; @Component({ selector: 'my-app', template: '<h1>My First Angular 2 App</h1>' }) export class AppComponent { }
And I am initializing angular from following code in index.html 我正在从index.html中的以下代码初始化angular
<script src="node_modules/core-js/client/shim.min.js"></script> <script src="node_modules/zone.js/dist/zone.js"></script> <script src="node_modules/reflect-metadata/Reflect.js"></script> <script src="node_modules/systemjs/dist/system.src.js"></script> <script src="systemjs.config.js"></script> <script> // import the 'app' module to boostrap the application System.import('app') .catch(function(err){ console.error(err); }); </script>
My project folder name is myangular. 我的项目文件夹名称是myangular。 So, My request is http://localhost/myangular/index.html
因此,我的请求是http://localhost/myangular/index.html
Problem 问题
As you can see in below image, Third request moved to root of localhost(Apache server).
如下图所示,第三个请求移至localhost(Apache服务器)的根目录。 Here dashboard of default page of Apache.
这里是Apache默认页面的仪表板。 This result in error.
这导致错误。
Please help me where I am missing configuration. 请帮助我缺少配置的地方。
Thanks in advance. 提前致谢。
I had the same problem, fixed by changing <base href="/">
to <base href="/myangular/">
(index.html). 我遇到了同样的问题,方法是将
<base href="/">
更改为<base href="/myangular/">
)。 In my case, I have to keep the "/" after the folder name. 就我而言,我必须在文件夹名称后保留“ /”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.