मुझे ऐसे व्यवहार का सामना करना पड़ रहा है जिसे मैं समझा नहीं सकता। import
या require
का उपयोग करने के आधार पर, यह परीक्षण सफलताएं (import
) या विफल रहता है (require
)।'आवश्यकता' कैसे 'आयात' es6 से अलग-अलग काम करता है?
के मामले में विफल रहते हैं, मेरे पास है निम्न त्रुटि:
import { Map, List } from 'immutable';
const expect = require("expect");
// import expectImmutable from "expect-immutable";
const expectImmutable = require("expect-immutable");
expect.extend(expectImmutable);
describe("immutability",() => {
describe("a number",() => {
function increment(currentState) {
return currentState + 1;
}
it("is immutable",() => {
expect(List([1])).toEqualImmutable(List([1]));
expect(Map({ a: 1 })).toEqualImmutable(Map({ a: 1 }));
let state = 42;
let nextState = increment(state);
expect(List([nextState])).toEqualImmutable(List([43]));
expect(List([state])).toEqualImmutable(List([42]));
});
});
});
किसी को क्या दृश्य के पीछे क्या हो रहा है की एक विवरण है:
PhantomJS 2.1.1 (Windows 7 0.0.0) immutability a number is immutable FAILED undefined is not a constructor (evaluating 'expect((0, _immutable.List)([1])).toEqualImmutable((0, _immutable.List)([1]))')
यहाँ कोड है?
तुम वैसे भी यह transpiling रहे हैं जैसे ही - तुम क्यों 'require' साथ कोड के बीच अंतर की जांच नहीं करते और transpiled' import' (जो 'require' रूप में अच्छी तरह हो जाएगा)? – zerkms
आप संभवतः उस ऑब्जेक्ट में डिफ़ॉल्ट प्रॉपर्टी की तलाश कर रहे हैं जिसकी आपको आवश्यकता है, 'आवश्यकता ("उम्मीद") का प्रयास करें। डिफ़ॉल्ट' और 'आवश्यकता ("अपेक्षित-अपरिवर्तनीय")। डिफ़ॉल्ट' – maioman