• 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
98 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 271 wizyt
0 głosów
0 odpowiedzi 179 wizyt
pytanie zadane 23 sierpnia 2017 w JavaScript, jQuery, AJAX przez Perkos Początkujący (290 p.)
Porady nie od parady
Możesz ukryć, zamknąć lub zmodyfikować swoje pytanie, za pomocą przycisków znajdujących się pod nim. Nie krępuj się poprawić pochopnie opublikowanego pytania czy zamknąć go po uzyskaniu satysfakcjonującej odpowiedzi. Umożliwi to zachowanie porządku na forum.Przyciski pytania

63,314 zapytań

109,571 odpowiedzi

228,886 komentarzy

43,987 pasjonatów

Przeglądających: 298
Pasjonatów: 17 Gości: 281

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.

...