2015-10-06 15 views
5

एम्बर 2+ में, क्या किसी को पता है कि जावास्क्रिप्ट कंसोल में मॉडल मैपिंग की समस्या निवारण के लिए एम्बर स्टोर का संदर्भ कैसे प्राप्त किया जाए?कंसोल से एम्बर डेटा स्टोर तक कैसे पहुंचे?

एम्बर 1 में App.__container__.lookup के माध्यम से यह संभव था, लेकिन यह अब अस्तित्व में नहीं है, और इस पर दस्तावेज़ ढूंढना बहुत मुश्किल है।

धन्यवाद

+0

क्या आप एम्बर इंस्पेक्टर का उपयोग नहीं कर सके? – nem035

+0

वैसे यह "सामान्य" लोड की गई इकाइयों के लिए केवल अच्छा है। मेरे पास एक मॉडल है जो सही ढंग से लोड नहीं होता है (बहुत सारे शून्य फ़ील्ड), मुझे मैपिंग समस्या पर संदेह है लेकिन कंसोल में कोई दृश्य त्रुटियां नहीं हैं, इसलिए मैं मैन्युअल रूप से स्टोर लोड को ट्रिगर करना चाहता था। –

उत्तर

11

आप अपने package.json में देखो, तो आप एक ember-export-application-global पैकेज है कि (यदि नहीं, इसे स्थापित) डिफ़ॉल्ट रूप से स्थापित है देखना चाहिए। यह आपके आवेदन को वैश्विक App ऑब्जेक्ट पर निर्यात नहीं करेगा, बल्कि आपके ऐप के नाम पर वैश्विक ऑब्जेक्ट पर होगा। तो आपके पास window.App के बजाय window.TodoList या window.ShoppingCart हो सकता है। वहां से आप इस लाइन (एंबर 1.xx के समान) का उपयोग कर सकते हैं:

AppName.__container__.lookup('service:store') 

तुम भी मैं क्या कर क्या कर सकते हैं और इसके लिए एक instance initializer बनाएँ: तो फिर तुम AppName.store सिर्फ उपयोगकर्ता कर सकते हैं

export default { 
    name: 'store-on-app', 
    after: 'ember-data', 
    initialize(instance) { 
     const application = instance.container.lookup('application:main'); 
     const store = instance.container.lookup('service:store'); 
     application.set('store', store); 
    } 
} 

+0

यह सही है। पैकेज को स्थापित करना पड़ा क्योंकि यह एक माइग्रेटेड पुराना एम्बर ऐप है। आपको बहुत - बहुत धन्यवाद! –

संबंधित मुद्दे