在浏览器引用的css或js中加载本地文件

Loading local file in browser referenced css or js

本文关键字:加载 文件 js 浏览器 引用 css      更新时间:2023-09-26

这可能是一个基本问题,但有些方法对我不起作用。

这是我的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服务器时,它可以很好地工作,但我需要使用本地引用和Web服务器。

这是因为您有<base>标记。

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

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

去掉base标签。

删除

<base href="/">

使用编辑链接。/前缀

src="./app/vender.js"