Angular + 引导抛出错误 拒绝加载图像,因为它违反了以下内容安全策略指令:"default-src 'none'"



我是Angular开发的新手,但对NPM和Bootstrap并不陌生。我正在做一个教程,我从引导程序网站上复制并粘贴文本,通过 npm 安装 ng-bootstrap 和 bootstrap-scss,单击浏览器上的刷新,它返回上述错误。运行 ng-serve 后,终端还说它找不到引导导入,这很奇怪,因为我的文件结构与引导网站相同,并且有关我的应用程序的所有内容都是直接从文档中复制粘贴的。ng-serve 可以单独显示文本,但在我添加引导链接时开始抛出错误。

我在 github 上的 Angular 支持下发现了同样的问题,官方的角度支持评论说这个问题不存在。之后,有30条来自不同的人的评论,他们有这个问题。我尝试运行重建node-sass,删除并重新安装node_modules,以及更改package.json,但都无济于事。

这是我的应用程序模块.ts:

import { NgModule } from '@angular/core';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap'
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule, NgbModule,
AppRoutingModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }


HTML 代码是从 https://ng-bootstrap.github.io/#/components/accordion/examples 复制的

我的 scss 文件中唯一的东西是

@import "./node_modules/bootstrap/scss/bootstrap";

项目中未更改其他文件。

预期:页面将加载样式文本和小部件。

浏览器中的输出: "无法获取/" 在浏览器控制台中: 拒绝加载图像"http://localhost:4200/favicon.ico",因为它违反了以下内容安全策略指令:"default-src 'none'"。请注意,"img-src"没有明确设置,因此"default-src"用作回退。

我修复了它。如果要对项目使用 scss,则从引导程序复制默认node_modules路径不起作用。我通过将 styles.scss 中的文件路径更改为 @import "../node_modules/bootstrap-scss/bootstrap";

最新更新