Ich benutze Reagieren Router und haben eine Route mit Parametern aber wenn ich versuche, auf den Link zu gehen, http://localhost:8080/taskSupport/advertiserId
, bekomme ich eine Reihe von 404 (Not Found) Fehler für alle meine CSS Dateien und meine client.min.js Datei. Wer weiß was los ist? Entschuldigung, ich bin ein Reaktion Noob ... Jede Hilfe wird sehr geschätzt werden!React Router mit URL-Parametern
<Route path="/">
<IndexRoute component={Layout}></IndexRoute>
<Route path="about" component={About}></Route>
<Route path="referral" component={Referral}></Route>
<Route path="taskSupport(/:advertiserId)" name="taskSupport" component={TaskSupport}></Route>
<Route path="faq" component={Faq}></Route>
<Route path="faq-plain" component={FaqPlain}></Route>
</Route>
Meine HTML-Datei:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- <meta name="viewport" content="width=device-width, initial-scale=1"> -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<title>BitMaker</title>
<link rel="icon" type="image/png" href="img/bitmaker.png" />
<link rel="stylesheet" type="text/css" href="css/stylesheet.css">
<link rel="stylesheet" type="text/css" href="css/faq.css">
<link rel="stylesheet" type="text/css" href="css/error404.css">
<link rel="stylesheet" type="text/css" href="css/about.css">
<link rel="stylesheet" type="text/css" href="css/taskSupport.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.3/css/font-awesome.min.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick.min.css" />
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.6.0/slick-theme.min.css" />
<link href="http://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic" rel="stylesheet" type="text/css">
<link href="http://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" type="text/css">
<link href="https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Prompt:300,400,500,600,700" rel="stylesheet">
<!-- Bootstrap -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<div id="app">
appHtml
</div>
<script src="client.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js">
</script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js">
</script>
</body>
können Sie die HTML hinzufügen, die in der CSS und JS-Dateien zieht? Sie könnten relative Links verwenden, die versuchen würden, sie von "/taskSupport/:advertiserID/filename.ext" anstatt vom Stamm der Domain zu erhalten. Versuchen Sie auch, diesen Routenpfad für taskSupport zu verwenden: "taskSupport /: advertiserId", ohne die Klammern. –
Die Klammern machen den AdvertiserId-Parameter optional. Ich werde meine HTML-Datei hinzufügen – Esther
Oh okay, ja, Sie verwenden relative Links für Ihre Ressourcen, die versucht, sie von jedem Ort, an dem Sie sich befinden. Um sie von der Wurzel zu ziehen, beginnen Sie Ihre Referenzlinks mit einem '/' wie folgt: '/css/stylesheet.css' und '/client.min.js'. –