如何从Angular4 / Expressjs路由中的URL中删除#

时间:2017-12-14 06:08:44

标签: javascript node.js angular express routes

我创建了快速路由,它们从dist文件夹中提供了相应的angular2 index.html文件,工作正常,但是在加载时,网址会加载#tags。

我尝试在app.module.ts中将位置策略更改为PathLocationStrategy,但是该路由会呈现快递的根索引文件。

我还尝试删除"提供:LocationStrategy"来自供应商选项&只保留"提供:APP_BASE_HREF,useValue:' ./' "选项,但这也不起作用。

这方面的任何指导都会有所帮助。

server.js

app.use('/', express.static('client/dist'));
app.use('/iot', express.static('iot/dist'));
app.use('/mwc', express.static('mwc/dist'));
app.use('/canteen', express.static('canteen/dist'));

物联网 - app.module.ts

  providers: [ 
    { provide: APP_BASE_HREF, useValue: './' },
    { provide: LocationStrategy, useClass: HashLocationStrategy },
    ModelService, 
    ListModelComponent
  ],

IOT - index.html

<base href="./">

目前的网址

http://localhost:3020/iot/#./

外观如何

http://localhost:3020/iot

1 个答案:

答案 0 :(得分:0)

你可以尝试

@NgModule({
imports: [routing, RouterModule.forRoot(routing,{ useHash: false})]