2016-02-19 6 views
5

पर निर्भर फ़ंक्शन अपडेट नहीं करता है मेरे पास एक आयनिक चयन बॉक्स है जो एक स्कोप चर अद्यतन करता है। मेरे पास एक स्कोप फ़ंक्शन भी है जो एक ऐसा फ़ंक्शन है जो उस स्कोप चर पर निर्भर है (उदाहरण के लिए यह परीक्षण करता है कि यह चर एक विशिष्ट मान है)। फ़ंक्शन का परिणाम आयनिक चयन बॉक्स के साथ अद्यतन नहीं होता है, जबकि यह मूल कोणीय जेएस में अद्यतन प्रतीत होता है। फ़ंक्शन की बजाय वास्तविक स्थिति को एम्बेड करना आयनिक के लिए काम करता है।आयनिक चयन स्कोप वेरिएबल

आयनिक उदाहरण:

$scope.testValue = 'value1'; 

$scope.variableFunction1 = function() { 
    return $scope.testValue === 'value2'; 
} 

प्रासंगिक एचटीएमएल:

Does not change: {{variableFunction1()}}<br/> 
Does change: {{testValue === 'value2'}}<br/> 

<div class="item item-input item-select"> 
    <div class="input-label"> 
    testValue 
    </div> 
    <select ng-model="testValue"> 
    <option value="value1">Val1</option> 
    <option value="value2">Val2</option> 
    <option value="value3">Val3</option> 
    </select> 
</div> 

ही कोणीय उदाहरण के लिए जहां यह काम करता है मैं उम्मीद के रूप में: http://jsfiddle.net/mm5vg0oa/

http://codepen.io/anon/pen/VeOXzb

नियंत्रक में प्रासंगिक जावास्क्रिप्ट

क्या यह एक बग है या मैं गलत हूं आयनिक में कुछ समझना?

उत्तर

3

मेरा अनुमान है कि ion-content एक नए बच्चे गुंजाइश बनाता है, जिसका अर्थ है कि जब आप का चयन में एक मूल्य का चयन करें, एक नया testValue चर ion-content गुंजाइश (जो नियंत्रक दायरे से अलग है) पर सेट कर दिया जाता है।

  1. ion-content अंदर एक तत्व पर ng-controller सेट करें:

    आपके पास दो विकल्प।

  2. किसी स्ट्रिंग के बजाय चयनित मान को रखने के लिए किसी ऑब्जेक्ट का उपयोग करें (उदाहरण यहां देखें: http://codepen.io/anon/pen/WrBzBq)।

यह पृष्ठ बहुत अच्छी तरह से समस्या बताते हैं: https://github.com/angular/angular.js/wiki/Understanding-Scopes

+0

ठीक है, मैं एक समाधान के रूप में अपने दूसरे विकल्प का उपयोग करेगा। लेकिन मुझे यकीन नहीं है कि क्या मैं आपकी व्याख्या पूरी तरह से समझता हूं। यदि आयन-सामग्री परीक्षण बदल रहा था तो स्कोप वैरिएबल कभी भी मूल्य नहीं बदलेगा? –

+0

उदाहरण के लिए इस पहेली में: http://codepen.io/anon/pen/bEyMwX यह नियंत्रक दायरे में 'value1' पर नहीं रहेगा? –

+0

ठीक है, कभी नहीं, आपकी व्याख्या 100% सही लगता है। {{TestValue}} जोड़ना जहां मैंने इसे जोड़ा है, आयन-सामग्री दायरे में चर को मुद्रित करने के लिए होगा। इस में http://codepen.io/anon/pen/QyRrpb मैं शीर्षक में मान मुद्रित करता हूं, जो नियंत्रक के मान को मुद्रित करेगा, न कि सामग्री। सहायता के लिए धन्यवाद! –

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