मैं अंगुलर के लिए नया हूं और अभी भी अपने निर्देशों को कस्टम निर्देशों के चारों ओर लपेट रहा हूं।angularjs रैपर निर्देश से लपेटा निर्देश
मैं अपने कस्टम निर्देश में लपेटकर द्वारा एचटीएमएल
<ui-select ng-model="model.selectedLanguages" multiple search-enabled="true" theme="select2" style="width: 300px;">
<ui-select-match placeholder="Pick one...">{{$item.name}}</ui-select-match>
<ui-select-choices repeat="lang.id as lang in langs |filter: { name : $select.search }">
<div ng-bind-html="lang.name | highlight: $select.search" ></div>
</ui-select-choices>
</ui-select>
के इस बिट का पुन: उपयोग करना चाहते हैं:
<language-picker ng-model="model.selectedLanguages"/>
कुछ इस तरह:
app.directive('languagePicker', function() {
return {
template : '<ui-select ng-model="**PARENT'S NGMODEL**" multiple search-enabled="true" theme="select2" style="width: 300px;"><ui-select-match >{{$item.name}}</ui-select-match><ui-select-choices repeat="lang.id as lang in langs | filter: { name : $select.search }"><div ng-bind-html="lang.name | highlight: $select.search"></div></ui-select-choices></ui-select>',
restrict : 'E',
require : 'ngModel',
replace : true
....
};
});
लेकिन कैसे करना है मैं ngModel को language-picker
से ui-select
निर्देश पर पास करता हूं?
अद्यतन
नीचे दिए गए सुझावों का उपयोग करना, मैं इसे ui-चयन के साथ काम मिल गया है, लेकिन बाहरी मॉडल सब पर अद्यतन नहीं होता है, plnkr.co/edit/Y43dmMGIc5GxM9fLoNPW देखते हैं, शायद इसलिए है क्योंकि यह बच्चे गुंजाइश है और माता पिता के दायरे बनी हुई है वही?
अद्यतन 2
मैं इसे एक जटिल तरीका है कि मेरे लिए भयानक लग रहा है में काम करते हैं क्योंकि मुझे पता नहीं है कारण है कि यह "काम" पहली जगह में (अजीब सामान में क्या हो रहा है देखने के लिए मिल गया है नियंत्रक):
app.directive('languagePicker', function(LanguageService) {
return {
templateUrl : 'LanguagePickerTpl.html',
restrict : 'E',
scope : {
languages : '='
},
controller : function($scope, LanguageService) {
console.log($scope);
$scope.langs = LanguageService.get();
$scope.model = $scope;
}
};
})
टेम्पलेट:
<ui-select ng-model="model.languages" multiple search-enabled="true"
theme="select2" style="width: 300px;">
<ui-select-match>{{$item.name}}</ui-select-match>
<ui-select-choices repeat="lang.id as lang in langs | filter: { name : $select.search }">
<div ng-bind-html="lang.name | highlight: $select.search"></div>
</ui-select-choices>
</ui-select>
मैं बहुत खुश हो सकता है अगर किसी को समझा सकता है क्या हो रहा है ("काम" exa
< language-picker language="model.selectedLanguage" />
और निर्देश के अंदर भाषा संपत्ति का उपयोग करें: mple यहाँ http://plnkr.co/edit/B53F9sc7UGkj0uxUpC17 )
यदि मुझे गलत नहीं है, तो बच्चे के दायरे में कुछ भी किए बिना अपने माता-पिता के गुणों तक पहुंच है। यदि आप पुन: प्रयोज्यता की परवाह करते हैं तो आपको शायद वर्णित उत्तरों का पालन करना चाहिए, और बच्चे के निर्देश पर एक विशेषता के माध्यम से संपत्ति को पास करना चाहिए। – furier