2014-10-09 110 views
1

这可能是一个基本问题,但有些如何不适合我。在浏览器中加载本地文件引用css或js

这里是我的html:

<!doctype html> 
    <head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <base href="/"> 
    <title></title> 
    <meta name="description" content=""> 
    <meta name="viewport" content="width=device-width"> 

    <link rel="stylesheet" href="app/app.css"/> 
    </head> 
    <body ng-app="App"> 
    <div> Hi There</div> 

    <script src="app/vendor.js"></script> 
    <script src="app/app.js"></script> 
</body> 
</html> 

该文件位于:file:///Users/kiran/Documents/app/dist/public/index.html 引用文件位于:

app.css: file:///Users/kiran/Documents/app/dist/public/app/app.css 
vendor.js: file:///Users/kiran/Documents/app/dist/public/app/vendor.js 
app.js: file:///Users/kiran/Documents/app/dist/public/app/app.js 

然而,当我试图用打开文件浏览器的>打开它说它无法加载错误文件:

Failed to load resource: net::ERR_FILE_NOT_FOUND file:///app/app.css 
Failed to load resource: net::ERR_FILE_NOT_FOUND file:///app/vendor.js 
Failed to load resource: net::ERR_FILE_NOT_FOUND file:///app/app.js 

虽然错误消息不同,但行为在Firefox中是一样的。我需要做些什么才能使它工作? 欣赏帮助。

注意:它在我运行网络服务器时工作正常,但我需要使用本地引用和Web服务器进行此项工作。

回答

5

由于您有<base>标签,因此发生这种情况。

The base URL to be used throughout the document for relative URL addresses. 

由于基本URL href是'/',它总是从根开始。所以在本地机器上,它找不到任何css/js文件,因为它会检查根目录中的文件,即C/D/E drive。它完全适用于web服务器,因为根目录将是您的公共文件夹。

摆脱base标签。

1

删除

<base href="/"> 

编辑链接以./前缀

src="./app/vendor.js"

相关问题