काम नहीं कर रहा है मैं एक कोणीय कारखाने के लिए कुछ परीक्षण लिख रहा हूं और कुछ उम्मीदें काम नहीं कर रही हैं और मुझे वास्तव में पता नहीं क्यों है।जावास्क्रिप्ट गेटर के लिए जैस्मीन परीक्षण
यह मेरा कारखाना है (इसका हिस्सा)। 'सख्त उपयोग करें';
angular.module('myAppMod')
.factory('Person', function(BaseModel) {
return BaseModel.extend({
get fullname() {
var name = [];
if (this.first_name) {
name.push(this.first_name);
}
if (this.person_extra && this.person_extra.middle_name) {
name.push(this.person_extra.middle_name);
}
if (this.last_name) {
name.push(this.last_name);
}
return name.join(' ');
}
});
});
और चमेली का परीक्षण करती है:
var p;
beforeEach(function() {
p = new Person({
first_name: 'first_name',
person_extra: {
middle_name: 'middle_name',
media_item_id: null
},
last_name: 'last_name',
security_level: 'security_level'
}, true);
});
it("has a fullname", function() {
expect(p.fullname).toEqual('first_name middle_name last_name');
});
p.fullname
""
(रिक्त स्ट्रिंग) लौट रहा है और कारखाने में, console.log(this.first_name)
, undefined
है।
किसी भी मदद की वास्तव में सराहना की जाती है। अग्रिम में धन्यवाद
क्या आप कारखाने का पूरा कोड दिखा सकते हैं? धन्यवाद। – alecxe
जावास्क्रिप्ट की कौन सी बोली आप इसे लिख रहे हैं? और आप किस ब्राउज़र में परीक्षण चला रहे हैं? क्या आप निश्चित रूप से जानते हैं कि प्राप्त करने वाले ब्राउज़र द्वारा सिंटैक्स प्राप्त किया जाता है? उदाहरण के लिए, शायद फैंटॉमजेएस गेटर्स का समर्थन नहीं करता ... बस जोर से सोच रहा है। –
@ सुनीलडी। सादा जावास्क्रिप्ट है। मैं मैक पर नवीनतम क्रोम का उपयोग कर रहा हूँ। – Ricbermo