【发布时间】:2017-03-02 02:13:21
【问题描述】:
我有这个模板用于传递到 md 对话框:
showDialog函数:
$scope.showDialog = function(element) {
var parentEl = angular.element(document.body);
$mdDialog.show({
template: element,
scope: $scope,
preserveScope: true,
parent: parentEl,
clickOutsideToClose: true,
controller:function($scope) {
$scope.answer = null;
}
});
}
调用 showDialog 函数
$scope.showDialog(`<div class="md-dialog-container" id="functionality">
<md-dialog aria-label="Dialog">
<md-input-container>
<label>Who do you want to assign to build functionality?</label>
<md-select ng-model="startAppController.fluff">
<md-optgroup label="Select an Employee">
<md-option ng-value={{employee.name}} ng-repeat="employee in staff" ng-selected="true">{{employee.name}}</md-option>
</md-optgroup>
</md-select>
</md-input-container>
<div>
<md-input-container flex-gt-xs>
<md-button type="submit" class="md-raised md-primary" ng-click="startAppController.assign()">Assign Work!</md-button>
</md-input-container>
</div>
</md-dialog>
</div>`);
我刚刚让 ng-click 部分工作,所以我实际上可以调用该 assign() 函数。但是,我无法将变量传递给 assign(),也无法从 md-select 框中访问“fluff”变量。
我不确定范围在整个事情中是如何发挥作用的,但我似乎大部分时间都在发挥作用。我只是无法访问那个绒毛变量。
【问题讨论】:
-
对我的回答有什么建议吗?
标签: javascript angularjs dialog angularjs-scope angular-material