簡體   English   中英

模擬依賴時,angular.mock.module函數如何知道要尋址的模塊?

[英]How does the angular.mock.module function know what module to address when mocking dependencies?

我試圖弄清楚angular.mock.module函數(通常別名為window.module )如何工作。 我了解它的主要用法是在測試中加載模塊; 這很容易:

beforeEach(angular.mock.module("mymodule"));

這將加載myhmodule每個前it在我的茉莉花規格。

module另一種用法是在特定模塊中模擬服務/工廠/值。 假設mymodule的值叫做foo ,值為42 ,按照我的規格,我可以這樣:

beforeEach(angular.mock.module("mymodule")); // this loads the module

// whereas this mocks the value of foo
beforeEach(module(function($provide) {
   $provide.value("foo", 43);
});

我的問題是,現在執行以下操作:如何module知道該地址是什么模塊使用嘲諷時$provide服務? 實際上,在測試中,我可以寫:

beforeEach(angular.mock.module("mymodule"));
beforeEach(angular.mock.module("anothermodule"));

beforeEach(module(function($provide) {
   $provide.value("foo", 43);
});

這最后一個代碼片段會為mymoduleanothermodule提供foo=43嗎?

module(function($provide) {
  $provide.value("foo", 43);
}

這將注冊一個提供foo值的新模塊。 不會將值添加到任何現有模塊中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM