我正在开发一个Angular 5项目,该项目正在利用一些非NPM外部项目,目前正在将他们的示例/演示合并到我们正在进行的Angular应用程序中。这些演示中包括静态媒体文件,如.pngs,.wavs等。我已将这些资产放在dir结构中,如下所示:
src -> assets -> ext_app -> media/
src -> assets -> ext_app -> <'loose' app js files>
src -> assets -> ext_app -> appfactory/
src -> assets -> ext_app -> ext_dependencies/ -> dep1 -> <many folders>
src -> assets -> ext_app -> ext_dependencies/ -> dep2 -> <many folders>
运行ng build时,dist /目录完整地包含assets文件夹。但是,当运行ng serve时,找不到任何非JS文件,并查看&#34;来源&#34; Chrome开发工具(或Firefox Dev Edition中的调试器)上的选项卡仅显示.js文件和包含.js文件的目录,一直显示资产目录中的每个嵌套文件夹。包含其他文件类型的所有其他文件类型和目录似乎已被删除,或者未提供给浏览器。
我的.angular-cli.json拥有我所见过的资产:
"assets": [
"assets",
"favicon.ico"
],
应该根据我所见的处理所有嵌套文件夹。有谁知道我的设置中缺少什么?
答案 0 :(得分:0)
您是否正确链接资源? Chrome Devtools只能查看代码中某处获取的资源,因此如果您对链接进行了不正确的格式设置,则无法显示这些资源。
应按以下方式访问静态资产:
文件夹:
src/assets/images/an-image.jpg
URL:
/assets/images/an-image.jpg