Angular 指令未显示任何值
Angular directive not displaying any values
我有一个不显示任何值的指令,即使当我中断函数时,vm 变量在创建每个指令行时拥有所有内容。
(function () {
angular
.module('sales.directives')
.directive("viewPayment", viewPayment);
function viewPayment() {
return {
controller: 'ViewPaymentController',
controllerAs: 'vm',
bindToController: true,
templateUrl: 'pages/viewPayment.html',
restrict: 'E',
scope: {
payment: '=',
paymentDetails: '=',
setCurrentPayment: '&',
currentPaymentId: '=',
openLineItemDrawer: '&'
}
};
}
angular
.module('sales')
.controller('ViewPaymentController', viewPaymentController);
viewPaymentController.$inject = ['$scope'];
function viewPaymentController($scope) {
var vm = $scope;
vm.details = _(vm.paymentDetails).where({ 'paymentId': vm.payment.paymentId }).value();
vm.revisionCount = getPaymentCount();
vm.showRevision = vm.revisionCount > 0;
vm.isCurrentPayment = false;
vm.showEffectiveDate = vm.payment.paymentType === 'ePayment';
$scope.$watch('vm.currentPaymentId', setIsCurrentPayment);
function getPaymentCount() {
return vm.details.length - 1;
}
function setIsCurrentPayment(currentPaymentId) {
vm.isCurrentPayment = currentPaymentId === vm.payment.paymentId;
}
}
})();
删除 "controllerAs" 并更改所有虚拟机。到 $scope。解决了这个问题。
我有一个不显示任何值的指令,即使当我中断函数时,vm 变量在创建每个指令行时拥有所有内容。
(function () {
angular
.module('sales.directives')
.directive("viewPayment", viewPayment);
function viewPayment() {
return {
controller: 'ViewPaymentController',
controllerAs: 'vm',
bindToController: true,
templateUrl: 'pages/viewPayment.html',
restrict: 'E',
scope: {
payment: '=',
paymentDetails: '=',
setCurrentPayment: '&',
currentPaymentId: '=',
openLineItemDrawer: '&'
}
};
}
angular
.module('sales')
.controller('ViewPaymentController', viewPaymentController);
viewPaymentController.$inject = ['$scope'];
function viewPaymentController($scope) {
var vm = $scope;
vm.details = _(vm.paymentDetails).where({ 'paymentId': vm.payment.paymentId }).value();
vm.revisionCount = getPaymentCount();
vm.showRevision = vm.revisionCount > 0;
vm.isCurrentPayment = false;
vm.showEffectiveDate = vm.payment.paymentType === 'ePayment';
$scope.$watch('vm.currentPaymentId', setIsCurrentPayment);
function getPaymentCount() {
return vm.details.length - 1;
}
function setIsCurrentPayment(currentPaymentId) {
vm.isCurrentPayment = currentPaymentId === vm.payment.paymentId;
}
}
})();
删除 "controllerAs" 并更改所有虚拟机。到 $scope。解决了这个问题。