Wie bekomme ich Zugriff auf die Elternbindung in meinem Kind, um die Verwendung zu umgehen?AngularJS 1.6.x Component Transclude Scope Problem
Geordnete Komponente:
<div class="wizard-container" ng-animate="transitionClass">
<section>
<nav>
<ol class="cd-breadcrumb triangle align-center align-item">
<li ng-repeat="breadCrumb in vm.breadcrumbs track by $index" ng-class="{ current: $index + 1 === vm.page}" >
<em><i class="fa {{breadCrumb.icon}}" aria-hidden="true"></i>{{breadCrumb.title}}
</em>
</li>
</ol>
</nav>
<div>
<ng-transclude></ng-transclude>
</div>
</section>
</div>
...
Hier ist der Assistent Controller:
app.controller('wizardController', wizardController);
wizardController.$inject = ['$scope', '$compile'];
function wizardController($scope, $compile) {
var vm = this;
vm.page = 1;
vm.next = true;
vm.previous = false;
vm.nextPage = function() {
vm.page < vm.breadcrumbs.length ? vm.page += 1 : vm.page;
vm.next = true;
vm.previous = false;
};
vm.previousPage = function() {
vm.page > 1 ? vm.page -= 1 : vm.page;
vm.previous = true;
vm.next = false;
};
vm.submit = function() {
vm.page = 1;
vm.next = true;
vm.previous = false;
}
};
app.component("wizard", {
template: require('./wizard.component.html'),
controllerAs: "vm",
controller: wizardController,
bindings: {
breadcrumbs: '<',
wizardPages: '<',
page: '='
},
transclude: true
});
Hier ist die Nutzung ist:
<wizard breadcrumbs="vm.breadcrumbs" wizard-pages="vm.wizardPages" page="1">
<div ng-if="vm.page === 1" ng-class="{ 'next': vm.next, 'previous': vm.previous }">
<service-center-branch-selection>
</service-center-branch-selection>
</div>
</wizard>
Wie kann ich Zugang zu vm.page erhalten, bekommt festgelegt von der Wizard (Eltern) -Komponente? Derzeit werden vm.page, vm.next und vm.previous nicht ordnungsgemäß aktualisiert.