• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Angular - nie działający routing (MEAN)

0 głosów
108 wizyt
pytanie zadane 18 lutego 2018 w JavaScript, jQuery, AJAX przez Rafineria Nowicjusz (170 p.)
edycja 18 lutego 2018 przez Rafineria

Witam! Pracuję nad pierwszą aplikacją opartą na MEAN i przy próbie stworzenia routingu natrafiłem na problem. Podczas załadowywania strony z danym url pojawia się błąd  => 

Cannot GET /(nazwaurl)

W konsoli nie pojawia się nic. Działa jedynie url, który zawiera bazę danych importowaną z mongo. Prześledziłem sporo wątków z podobnym problemem i proponowane rozwiązanie były już u mnie napisane. Wydaję mi się więc, że mam ukryty jakiś banalny błąd, ale nie mam już pomysłu co to może być. Będę wdzięczny za pomoc, poniżej kod z server.js

var express = require('express');
var bodyParser = require('body-parser');
var path = require('path');
var http = require('http');
var app = express();
var api = require('./server/api.js');

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.use(express.static(path.join(__dirname, 'dist')));

app.use('/', api);

app.get('*'), (req, res) => {
	res.sendFile(path.join(__dirname, 'dist/index.html'));
}

var port = process.env.PORT || '3000';
app.set('port', port);

var server = http.createServer(app);
server.listen(port, () => console.log("Server is running"));

app-routing.module:

import {NgModule} from "@angular/core";
import {RouterModule, Route} from "@angular/router";
import {StatsComponent} from "./stats/stats-2017/stats-2017.component";

const APP_ROUTES : Route[] = [
	{ path: 'stats17', component: StatsComponent}
];

@NgModule({
	imports: [
	RouterModule.forRoot(APP_ROUTES)
	],
	exports: [
	RouterModule
	]
})

export class AppRoutingModule {}

AppRoutingModule jest oczywiście zaimportowany w app.module

komentarz 18 lutego 2018 przez zgrybus Pasjonat (24,940 p.)
przeniesione 18 lutego 2018 przez JSHolic
Lepiej pokaż kod routingu angularowego :)
komentarz 18 lutego 2018 przez Rafineria Nowicjusz (170 p.)
Dodany w głównym poście :)
komentarz 18 lutego 2018 przez zgrybus Pasjonat (24,940 p.)
stats17 jest twoim głównym routem i jedynym?
komentarz 18 lutego 2018 przez Rafineria Nowicjusz (170 p.)
Na razie tak. Docelowo planuję ich więcej, ale najpierw chciałbym rozwiązać ten problem.

1 odpowiedź

+1 głos
odpowiedź 18 lutego 2018 przez zgrybus Pasjonat (24,940 p.)
wybrane 25 lutego 2018 przez Rafineria
 
Najlepsza

https://pastebin.com/GYu3BZ27

Gdyby to nie działało dodaj jeszcze Hash

komentarz 18 lutego 2018 przez Rafineria Nowicjusz (170 p.)

http://localhost:3000 prawidłowo przekierowuje na http://localhost:3000/stats17, ale po odświeżeniu strony lub w momencie, kiedy chcę bezpośrednio rozpocząć od adresu http://localhost:3000/stats17 otrzymuję błąd: 

Cannot GET /stats17

Rozumiem, że HashLocationComponent dodać jako Component w tym samym module, gdzie znajduje się StatsComponent?

Podobne pytania

0 głosów
1 odpowiedź 83 wizyt
pytanie zadane 22 grudnia 2015 w JavaScript, jQuery, AJAX przez Voudubu Użytkownik (740 p.)
0 głosów
0 odpowiedzi 317 wizyt
0 głosów
0 odpowiedzi 184 wizyt
pytanie zadane 23 sierpnia 2017 w JavaScript, jQuery, AJAX przez Perkos Początkujący (290 p.)
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.Podgląd posta

64,904 zapytań

111,374 odpowiedzi

234,342 komentarzy

46,748 pasjonatów

Przeglądających: 230
Pasjonatów: 16 Gości: 214

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...