2016-10-21 33 views
1

我正在使用react/webpack在本地8080上運行開發服務器。這是我還不太明白的事情,之前我遇到過這個問題。 Bootstrap在HTML中被鏈接並運行正常。但是,當我鏈接樣式表時,控制檯給我的樣式表找不到404的錯誤。在服務器上找不到CSS樣式表?

這裏是我的HTML樣板:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Weather App</title> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" /> 
    <link rel="stylesheet" href="public/stylesheet.css" /> 
</head> 
<body> 
    <div id="root"> 

    </div> 
</body> 
</html> 

index.html,然後Index.js是在根級別,所以是/ Public目錄,其中只包含一個文件:stylesheet.css中。

爲什麼在運行本地服務器時stylesheet.css不會在瀏覽器中加載,我該如何解決這個問題?謝謝。

+1

你嘗試'公共/ stylesheet.css'? (資本P) - 一些服務器(看着你的IIS)區分大小寫 – ochi

+0

謝謝!我已經嘗試過公開,因爲您可以在上面的示例中看到,但Public目錄不在項目的TRUE根目錄中。它在App目錄中。我將公共目錄移動到真正的根目錄(使用webpack配置和節點模塊)並且它工作正常! – user7024499

+0

這是爲什麼這個順便工作的原因嗎?瀏覽器是否只希望公用文件夾位於真正的根目錄中? – user7024499

回答

2

如果你的分享與表達公用文件夾像這樣

app.use(express.static(path.join(__dirname, 'public')));

那麼你就需要有「公共」的來源。

換句話說這個

<link rel="stylesheet" href="public/stylesheet.css" />

應該是這個

<link rel="stylesheet" href="/stylesheet.css" />

相關問題