routerLink не работает при угловом соединении с node.js - PullRequest
0 голосов
/ 04 июля 2019

nav.component.html

<nav class="navbar navbar-inverse navbar-extra">
  <ul class="nav">
    <li>
      <a routerLinkActive="active" routerLink="/">
          Home
      </a>
    </li>
    <li>
      <a routerLinkActive="active" routerLink="/catalog">
          Catalog
      </a>
    </li>
    <li>
      <a routerLinkActive="active" routerLink="/order">
           Order
      </a>
    </li>
  </ul>
</nav>

app-routing.module.ts

import { NgModule } from '@angular/core';
import {HomeComponent} from './home/home.component';
import { Routes, RouterModule } from '@angular/router';
import {InterviewDetailsComponent} from './interview-details/interview-details.component';
import {InterviewsComponent} from './interviews/interviews.component';

const routes: Routes = [
  { path: '',
    component: HomeComponent
  }
  ,
  {
    path: 'catalog',
    component: CatalogComponent
  },
  {
    path: 'order',
    component: OrderComponent
  }

];

@NgModule({
  imports: [
    RouterModule.forRoot(
      routes,
      {
        enableTracing: true
      }
      )
  ],

  exports: [ RouterModule ]

})
export class AppRoutingModule { }

app.component.html

main>
  <app-navbar></app-navbar>
  <router-outlet></router-outlet>
</main>

server.js

const cross_platform = require('cors');
const express = require('express');
const path = require('path');
const app = express();

const db = require("./db");
const collection = "catalog_items";
const basePath = '/dist/my-app/';

app.use(cross_platform());
app.use(express.static(path.join(__dirname, basePath)));



// my-app

const port = process.env.PORT || 8080;

db.connect((err)=>{
  // If err unable to connect to database
  // End application
  if(err){
    console.log('unable to connect to database');
    process.exit(1);
  }
  // Successfully connected to database
  // Start up our Express Application
  // And listen for Request
  else{
    app.listen(port, (req, res)=>{
      console.log(`Running on port ${port} ${db.getDB()} ${collection}`)
    });
  }
});
  • server.js имеет определенные конечные точки для получения данных из базы данных, я не могу много рассказать о конечных точках.
  • Приведенный выше routerLink работает правильно, когда я ng serve command
  • Когда я набираю Url /catalog, то routerLink правильно сопоставляется с CatalogComponent
  • Я пытаюсь node server.js команда, которая подключается к серверу node.js, после чего работает routerLinkкогда я играю с пользовательским интерфейсом, но теперь, когда я набираю Url /catalog, это выдает мне ошибку: Cannot GET /catalog
  • Браузер делает запрос на получение типа URL, который означает, что routerLink остается незамеченным
  • Я хочу, чтобы при вводе URL он отображался на соответствующий угловой компонент, а не на get запрос к серверу.
...