Содержание ионов и нижний колонтитул имеют различную область видимости
У меня есть два поля ввода внутри моего ионного содержимого, и к ним оба прикреплена ng-модель. Затем внутри моего ионного колонтитула я нажимаю нг, где вызываю функцию и передаю две нг-модели.
Все это работало нормально, когда у меня был ng-щелчок внутри ионного содержимого, но когда я перемещаю его в нижний колонтитул, я получаю неопределенное значение для двух параметров, которые я передаю функции.
Значит ли это, что содержание ионов и нижний колонтитул имеют разные области видимости? Даже если они находятся в одном файле и имеют один и тот же контроллер?
2 ответа
Я верю ion-footer
& ion-content
создает новую дочернюю область, которая прототипически наследуется от текущей области. Ниже ионный код даст вам лучшую иллюстрацию того, как он работает внутри, scope: true,
отвечает за создание новой дочерней области.
Код
.directive('ionContent', [
'$parse',
'$timeout',
'$ionicScrollDelegate',
'$controller',
'$ionicBind',
function($parse, $timeout, $ionicScrollDelegate, $controller, $ionicBind) {
return {
restrict: 'E',
replace: true,
transclude: true,
require: '^?ionNavView',
scope: true, //<-- this creates a prototypically inerherited scope
template:
'<div class="scroll-content">' +
'<div class="scroll"></div>' +
'</div>',
Вам нужно использовать .
аннотация исправит вашу проблему
Например.
Если вы используете переменную как примитив, как
$scope.volume = 5
Тогда вам нужно использовать:
$scope.data = { 'volume' : 5}
Объяснение ответа в комментариях от pankajparkar:
Директива по ионному содержанию имеет новую сферу применения. Он работает с использованием точечной нотации (важно при работе с наследованием области)
Вот почему он работает с ng-model="data.model1
Пожалуйста, обратитесь к: