लागू करें इस उदाहरण में, मेरे पास एक संलग्न निर्देश के साथ एक इनपुट है। निर्देश इनपुट के बगल में संदेश प्रदर्शित करने के लिए है। संदेश जोड़ने के लिए एक और इनपुट और एक बटन है। एक बार कुछ संदेश प्रदर्शित होने पर, संलग्न निर्देश के साथ इनपुट पर ध्यान केंद्रित करने से संदेशों को साफ़ करना चाहिए। http://jsfiddle.net/viro/WBqxf/
तो मेरे पास एक अलग मॉडल के साथ निर्देश है, और मैं उस मॉडल को अद्यतन करने की कोशिश कर रहा हूं जब निर्देश वाला तत्व फोकस में जाता है। ऐसा लगता है जैसे मैं दायरे में घटना कॉलबैक रैप करने के लिए है $ अगर मैं मॉडल को अपडेट करना चाहते लागू होते हैं:।
element.on('focus',function(){
scope.$apply(function(){
console.log("focus !");
scope.tstMsg=[];
})
});
मुझे लगता है मैं $ उस में रैप करने के लिए क्योंकि मैं jqlite घटना कॉलबैक और मैं उपयोग कर रहा हूँ लागू है अनुमान लगाएं कि वे "बाहरी" कोणीय जेएस चलाते हैं, लेकिन मुझे दस्तावेज़ों में स्पष्ट रूप से यह नहीं मिला।
क्या मैं इसे सही कर रहा हूं या यह हैक है?
क्या ऐसा करने का कोई बेहतर तरीका है?
'एनजी-फोकस' का उपयोग करें और एक्स्ट्रेनल इवेंट हैंडलर के लिए स्वयं को अतिरिक्त कोडिंग सहेजें http://docs.angularjs.org/api/ng.directive:ngFocus – charlietfl
लेकिन प्रत्येक तत्व के लिए जिसमें निर्देश संलग्न है, मैं वही व्यवहार चाहता हूं फोकस पर, नियंत्रक के बावजूद जिसमें तत्व है। NgFocus के साथ मैं प्रत्येक तत्व के लिए एक ऐसा फ़ंक्शन बनाने के लिए होता जो संदेश की सरणी को रीसेट करता है, अगर यह निर्देश द्वारा स्वचालित किया जा सकता है तो यह कठिन है, है ना? –