Привет, ребята У меня очень сложная проблема.AngularJs Параметр привязки к форме mdDialog
Я создал директиву многократного использования, и теперь я хочу взять значение параметра пользователя и привязать его к моей форме внутри директивы.
На стороне пользователя, они способны вызвать директиву по:
<test-app></test-app>
Затем они могут передать в параметрах в директиву:
<test-app user-email="[email protected]"></test-app>
OR
<test-app user-email="{{ userEmail }} "></test-app>
//They can take value from their own controller.
На моих Собственных сторона по директиве, main.js:
angular.module('TestModule').controller('MainCtrl',['$mdDialog',function($mdDialog) {
this.openDialog = openDialog;
function openDialog(){
$mdDialog.show({
controller: 'DialogCtrl as dialog',
templateUrl: 'dialog.html'
});
}
}]);
angular.module('TestModule').directive('testApp',function(){
return {
controller: 'MainCtrl as main',
scope: {
userEmail :'@'
},
restrict : 'E' ,
templateUrl : 'FormButton.html'
}
});
angular.module('TestModule').controller('DialogCtrl',['$mdDialog',function($mdDialog,$scope){
function submit(){
etc etc . .
}
}
В FormButton.html:
<md-button ng-click="main.openDialog()"> </md-button>
На dialog.html:
<md-dialog>
<form>
etc , etc
<input type="email" name="email" placeholder="Email" data-ng-model="userEmail">
etc , etc
</form>
</md-dialog>
Проблема: мне нужно передать в значении USEREMAIL со стороны пользователя и привязать его к виду так что, когда пользователь открывает форму, это значение есть.
Я думаю, что из-за шаблонаUrl, способ связывания модели не работает.
Что я пробовал: 1) Я попробовал ng-model для привязки, но форма находится на другой странице, так что она не смогла прочитать значение.
2) Я хотел передать значение из директивы в контроллер, я изучаю онлайн, но не нашел жизнеспособного решения этой проблемы.
Может ли кто-нибудь помочь с этим решением?
использовать 'bindToController: true' в вашей директиве. – Claies
'ng-model =" user.email "' должен быть 'userEmail' –
@Claies, я добавил его, но он не имеет никаких изменений на выходе –