मैं राउटर-आधारित एम्बरजेएस ऐप बना रहा हूं (दृढ़ता से excellent router guide पर मॉडलिंग किया गया है)। हालांकि, मैं एक नियंत्रक में एक दृश्य बनाम में क्या संबंधित है पर काफी उलझन में हूँ।एम्बरजेएस राउटर ऐप: दृश्य बनाम नियंत्रक
मुझे पूरी तरह से मिलता है कि {{action showFoo}} अक्सर राज्य परिवर्तन को इंगित करता है और राउटर मेरे ऐप के लिए राज्य मशीन है। लेकिन मेरे कुछ कार्य उस श्रेणी में नहीं आते हैं।
यहां मेरे वास्तविक कोड से एक उदाहरण दिया गया है (एचटीएमएल सरलीकृत लेकिन बरकरार बरकरार है)। मैं एक लॉगिन फॉर्म चाहता हूं जो AJAX के माध्यम से काम करता है (यानी एचटीएमएल फॉर्म सीधे सर्वर पर पोस्ट नहीं करता है, यह मेरे एम्बर ऐप को जेसन के माध्यम से लॉगिन करने का प्रयास करता है)।
<form>
Email Name: {{view Ember.TextField valueBinding="email"}}
Password: {{view Ember.TextField valueBinding="password"}}
<button type="submit" {{ action logIn target="this" }}>Sign in</button>
</form>
valueBindings मेरी loginController में फ़ील्ड्स हैं, लेकिन लॉग इन हैंडलर मेरे विचार में है (क्योंकि मैं समझ नहीं सकता कैसे नियंत्रक कॉल करने के लिए टेम्पलेट बताने के लिए)। मुझे लगता है कि यह एक अजीब वितरण & मुझे यकीन नहीं है कि इस पर एम्बर दृष्टिकोण सही है।
मुझे नहीं लगता कि राउटर को कार्रवाई को संभालना चाहिए क्योंकि लॉगिन प्रयास का अनुरोध वास्तव में एक राज्य परिवर्तन नहीं है। LoginController पर सही स्थान की तरह लगता है लॉगिन का प्रयास करें। लॉगिन प्रतिक्रिया प्राप्त होने के बाद वह नियंत्रक राज्य परिवर्तन को ट्रिगर कर सकता है।
धन्यवाद, मैं इस मॉडल की तरह । मैं सिर्फ राज्य प्रबंधन के लिए राउटर का प्रभावी ढंग से उपयोग करने की धारणा पर एक संभाल प्राप्त करना शुरू कर रहा हूं - "प्रमाणीकृत" बनाम "गैर-प्रमाणीकृत" की सोच, क्योंकि सब्रॉउट्स वाले राज्य अब वास्तव में स्पष्ट हैं और मेरे दिमाग में काफी अच्छे हैं। – Boon
@pangratz - क्या आपके प्रमाणित लॉग इन के तहत सभी प्रमाणित विचारों को उपरोक्त /admin/newView उपरोक्त उदाहरण में निहित किया जाना चाहिए? – Upworks
@ अपवर्क्स हां ... – pangratz