Angular Material 和 Jasmine:“没有 InjectionToken MdDialogData 的提供者!”

2024-02-26

我有一个用于 Angular Material MdDialog 的组件:

@Component({
  ...
})
export class MyComponent {

  constructor(@Inject(MAT_DIALOG_DATA) public data: any, public dialogRef: 
MdDialogRef<MyComponent>) {
...
  }


}

我正在尝试用 Jasmine 对其进行单元测试:

describe('MyComponent', () => {
  let component: MyComponent;
  let fixture: ComponentFixture<MyComponent>;

  beforeEach(async(() => {
    TestBed.configureTestingModule({
      imports: [
        SharedTestingModule,
      ],
      declarations: [
        MyComponent,
      ],
    })
    .compileComponents();
  }));

  ...
  
});

不幸的是,我收到以下错误:

错误:没有 InjectionToken MdDialogData 的提供程序!

SharedTestingModule 导入和导出我的自定义 Angular Material 模块,该模块本身导入和导出 MdDialogModule。

我怎样才能摆脱这个错误?

非常感谢!

Angular 4.2.4
Angular Material 2.0.0-beta.7
Jasmine 2.5.3

我添加了这个:

providers: [
    { provide: MAT_DIALOG_DATA, useValue: {} },
    // { provide: MdDialogRef, useValue: {} }, --> deprecated
    { provide: MatDialogRef, useValue: {} } ---> now
]

它有效:)

感谢您的帮助@methgaard!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular Material 和 Jasmine:“没有 InjectionToken MdDialogData 的提供者!” 的相关文章

  • 在角度项目中使用茉莉花进行单元测试订阅方法

    我正在尝试测试ngOnInit 具有的组件的方法subscribe method 成分 import Component OnInit from angular core import SharedDataService from serv
  • 单元测试 HttpClientModule 时出错(Angular 4.3+)

    我正在探索新的 Angular HttpClientModule 并遇到莫名其妙的错误 该模块足够新 我还找不到任何有关如何进行单元测试的有用信息 并且官方文档没有任何示例 该应用程序包含一个具有一种方法的服务 该方法将 URL 传递给ht
  • 由于 ngIf 语句,存储选择未运行

    我正忙于 MeteorJS 和 RxJS 它们正在退出 但有时也有点令人困惑 我当前的问题只是 Angular NgRx 问题 与 MeteorJS 无关 正如您在示例中看到的 有一个ngIf基于showChannels 该布尔值设置为fa
  • Angular 4 在 APP_INITIALIZER 中注入路由

    我正在尝试检索 APP INITIALIZER 中 url 中存在的数据 应用程序模块 ts export function init config ConfigService router Router return gt config
  • 如何在 Typescript 中使用正则表达式进行电子邮件验证[重复]

    这个问题在这里已经有答案了 我需要使用 typescript Angular 应用程序验证 Excel 文件中的电子邮件和日期字段 我尝试使用正则表达式进行验证 但对于正确的电子邮件地址 结果始终返回 false 谁能帮我验证电子邮件和日期
  • Angular - 使用 routerlink 将对象传递给 @Input 参数

    我有一个带有 Input 参数的角度分量 如下所示 Component selector app transmission history export class TransmissionHistoryComponent implemen
  • 是否可以使用纯 css 禁用 mat-tab 动画

    我想禁用 Angular Material mat tab 动画 内容滑入到位时发生的动画 我知道可以使用 disabled 属性 但我想知道是否可以使用纯 css 达到相同的效果 EDIT 我们的用户体验团队希望从材质选项卡中删除幻灯片动
  • 在 TypeScript / Angular 4+ 中将 Enum 键显示为字符串

    export enum Type TYPE 1 Apple TYPE 2 Orange TYPE 3 Banana 当我登录时Type TYPE 1 toString默认情况下会调用方法 console log Type TYPE 1 is
  • 如何按顺序使用 RxJS 可观察量?

    事情是这样的 我有一个 HTTP get 请求 它返回一个 JSON 对象列表 我使用 RxJS 订阅接收该列表的数据 现在 对于该列表中的每个对象 我想执行另一个 HTTP 请求 然后将该请求的结果放入数组中 到目前为止 我已经能够做到这
  • 将打字稿中的字符串转换为时间格式

    我必须将服务器数据转换为字符串格式13 47 to 01 47PM但我正在尝试 time date hh MM and task time date shortTime 但它显示日期管道错误和参数错误 运行时错误 InvalidPipeAr
  • 严格模式下不允许属性的多个定义 - Angular

    我在 IE 中的 Angular 6 项目中遇到了这个问题 这导致应用程序无法加载 它仅发生在应用程序的产品版本中 该版本由 Angular 连接和缩小 在 ngserve 下运行的本地开发版本并未导致该问题 此错误出现在 Chrome 开
  • AOT 编译器 - 包括延迟加载的外部模块

    我试图将外部模块 托管在 git npm 存储库中 作为延迟加载模块包含在我的 Angular 应用程序中 我正在使用 ngc 编译器编译我的外部模块 node modules bin ngc p tsconfig aot json 这是我
  • Angular 5,如何检测用户不活动

    除了使用 IdleJS 和 ngDoCheck 之外 我们如何在 Angular 5 中检测用户的不活动状态 Thanks 你可以尝试用这个 export class AppComponent userActivity userInacti
  • 如何仅使用 TypeScript 声明属性为字符串类型的对象?

    我的组件中有一个像这样的配置数组 config ButtonConfig this config push new ButtonConfig 今天 我意识到让数组表现得像字典更有意义 这样我就可以不通过数字索引而是通过名称规范地访问特定元素
  • 如何调试使用 Testaulous (Karma) 运行的 Jasmine 规范?

    我有一个具有 Jasmine 规格的小项目 我使用 Testaulous 作为我的测试运行程序 我不明白如何调试应用程序代码或规范代码 当我尝试在 Chrome 开发工具中设置断点时 下次规范运行时不会命中它 因为它每次都会使用新的查询字符
  • Angular2 - 更改位置而不触发路线

    我有一个使用服务来加载项目列表的视图 我总是只显示一个项目 并使用 gt 按钮在项目之间移动 有没有办法在不触发 Angular 路由系统的情况下更改浏览器地址栏中的地址并将记录添加到浏览器历史记录中 我知道如果我使用 location g
  • Angular 中的动态子组件

    我正在构建一个具有一致的元素列表设计模式的应用程序 如果我有一个 A 类型的对象 我会创建AComponent它接受a作为输入 然后创建另一个组件来迭代 A 列表 AListComponent 那么如果我有一个对象 B 我需要做同样的事情
  • 角度分割列表

    我有一个看起来像这样的列表 A B C 是否有任何简单的方法 而无需创建一个函数 将其展平为一个看起来像这样的数组 A B C 我搜索了 SO 但没有找到任何带有打字稿方法的内容 Thanks 编辑 A B C 是相同类型 看来您正在寻找的
  • 使用验证器禁用 FormGroup

    I had formArray我的复选框checkboxForm 如果没有复选框 我需要禁用按钮提交checked 我在我的上实现了自定义验证器checkboxForm 这是我尝试过的 Ts file get formReceivedSum
  • 如何重启ngOnInit来更新Interpolation

    有办法重新启动吗ngOnInit 改变变量时 因为我想重新开始ngOnInit 改变时theme多变的 这是我的代码 设置 ts export class SettingsPage implements OnInit phraseColor

随机推荐

  • std::set 2D 点的自定义比较器

    我需要一个非重复的 2D 点列表 所以我使用std set具有自定义比较功能 我使用的函数在插入点后出现问题 因为有时std find找不到已经插入的点 const double tolerance 0 1 struct MyPoint2D
  • 从Optional<>转换为ArrayList<>

    我有以下情况 public ArrayList a getMethods return b c test 所以 我的问题是b c test 返回一个值Optional a 作为返回类型 但我需要返回一个ArrayList a 所以 我尝试将
  • 完整原型太大而无法保存,已清除变量

    我在渲染谷歌应用程序引擎代码时遇到此错误 有人知道这个错误吗 你在使用appstats吗 当 appstats 记录有关应用程序的状态时 尤其是在堆栈上存储大量数据时 可能会发生这种情况 它没有害处 但在 appstats 中检查调用时您将
  • 如果焦点是 edittext,则禁止滚动 recyclerview

    我有一个带有水平滚动的回收器视图 recyclerview 中的每个项目都有编辑文本 当我单击 edittext 时 recyclerview 滚动到末尾 我怎样才能禁止滚动 谢谢 您可以在 EditText 上设置焦点事件侦听器以禁用焦点
  • 黑莓 - 应用程序已在商店上架;我可以更改代码签名密钥吗

    不久前 我们为客户构建了一个应用程序 使用我们公司的密钥对其进行签名 并将其放在 BlackBerry App World 商店中 此后我们终止了与客户的合同 他们现在已经对该应用程序进行了进一步的 内部 开发 并要求我们提供签名密钥 以便
  • 如何从 Azure AD 获取用户列表?

    我正在使用 asp net core MVC 我想从 Azure AD 读取用户 我读了很多微软文档 我知道我必须使用 GraphAPI 来做到这一点 但我不知道如何做 现在一切都让我感到困惑 我不知道在哪里放置代码 我不知道在哪里获取 G
  • create-react-app eintegrity 错误窗口

    当我开始在 Windows 10 电脑中创建 React 应用程序时 出现了这些错误 请帮我解决这个问题 PS F gt npm install g create react app C Users Harshit Singh AppDat
  • R:调整圈图中的标签

    我有下面的代码 我试图使用令人惊叹的包 circlize 制作一个圆形图 我读过这个小插图并承认其中一些内容有点超出了我的理解范围 我想知道是否有一种快速方法可以删除图表上的所有标签 包括刻度线 然后按照与扇区相同的角度以浅灰色重新添加奥迪
  • 是否可以在 GDB 中命名断点?

    有没有办法在 GDB 中标记 命名断点 以便更容易地识别它们 例如 info b 如果是这样 怎么办 不 没有办法做到这一点 http users ece utexas edu adnan gdb refcard pdf http user
  • 删除 Spark 中不遵循架构的行

    目前 我的表的架构是 root product id integer nullable true product name string nullable true aisle id string nullable true departm
  • 如何创建和使用非常大的调色板纹理以在 opengl 中使用?

    详细信息 我有一个带有统一纹理的 glsl 片段着色器 u MapTexture 上面有几千种颜色 最多大约 10k 15k 唯一的 rgb 值 我还有一个统一的调色板纹理 u paletteTexture 大小为 16384 1 我想用它
  • Android 在片段中使用自定义视图改变方向时的奇怪行为

    我有一个FragmentActivity其中显示了一个Fragment默认情况下 该片段由一个EditText a TextView和一个自定义下拉菜单 通过扩展AutoCompleteTextView 如果我的习惯AutoComplete
  • Swift / Instagram API - 如何使用 Instagram 应用程序进行身份验证

    我需要一个AccessToken让用户在我的应用程序中授予访问他自己的 Instagram 帐户的权限 我已经在 Instagram 开发中心注册了所有内容 目前我正在使用简单认证 https github com calebd Simpl
  • Linux 上的 Python 模块 win32com

    我正在编写一些在多个平台下运行的 Python 代码 不幸的是在Win32下 我必须支持一些COM功能 然而 这些行在 Linux 环境下会失败 from pythoncom import PumpWaitingMessages from
  • 更改 Nimbus LaF 处理 JTree 节点突出显示的方式

    我一直致力于将 Java 应用程序从 WindowsLookAndFeel 转换到 Nimbus 尽管 Nimbus 存在缺陷 但基本上还是成功的 我的用户总体上喜欢 Nimbus LaF 但不喜欢一些细节 其中一些细节我通过查阅本网站上以
  • 如何在限制列表中输入或包含附加参数?

    我在下面的 my q list 中有一个 quosures 列表 library rlang suppressPackageStartupMessages library dplyr q list lt function enquos my
  • Web 服务和 API:“先有鸡还是先有蛋”

    我们即将开发一个网络服务 它将具有一些 社交 功能 我们需要创建一个 响应式 网站和移动应用程序 至少 iOS Android 我已经开发了具有 API 的 Web 服务 用于应用程序访问 通常不公开 然而 这次我正在考虑采用一种不同的 回
  • Html Agility Pack - 从 html 文档获取 html 片段

    使用 html 敏捷包 我如何从完整的 html 文档中提取 html 片段 就我的目的而言 html 片段 被定义为 html 片段 内的所有内容 tags 例如 输入示例 p My content p 期望的输出 p My conten
  • 如何在 debian 64 位上从 tcphdr (sk_buff) 结构访问数据/有效负载?

    我正在开发一个小型防火墙 我必须从端口 80 http 检索每个 tcp 数据包的数据以进行解析 这段代码在 debian 32 位虚拟机上运行良好 我能够打印每个网页的标题 但是当我尝试加载内核模块并通过 http 端口传输一些数据时 它
  • Angular Material 和 Jasmine:“没有 InjectionToken MdDialogData 的提供者!”

    我有一个用于 Angular Material MdDialog 的组件 Component export class MyComponent constructor Inject MAT DIALOG DATA public data a