0
在編寫ember.js中的服務的單元測試時,我看到了一個奇怪的交互。它只發生在數組上。EmberJS中的單元測試服務:如何防止測試之間的交互?
我有一個服務,它有一個數組作爲屬性。數組的狀態在不同的測試中共享。如果屬性具有簡單類型(例如數字),我不會看到這種行爲。你有什麼暗示發生了什麼?
這裏是一個餘燼,玩弄演示該問題:https://ember-twiddle.com/068e0c0fd7240e54c98972002fc2e34f?openFiles=tests.unit.services.my-service-test.js%2C
更新:我注意到它工作正常,如果我在init()
初始化數組但如果我宣佈它作爲服務對象的屬性。像不同實例之間的數組和對象共享狀態等複雜類型?
所以這是行不通的:
import Ember from 'ember';
export default Ember.Service.extend({
array: [],
});
這會不會按預期工作:
import Ember from 'ember';
export default Ember.Service.extend({
array: undefined,
init() {
this.set('array', []);
}
});