我的控制器:
.controller('ExampleController', ['$scope', function($scope) {
$scope.barcode = 111;
$scope.scanBarcode = function() {
$scope.barcode = 123123123;
};
$scope.scanThis = function() {
$scope.barcode = 456456456;
};
}])
我的观点:
<form>
<div class="list list-inset">
<label class="item item-input">
<input type="number" placeholder="Code?" ng-model="barcode">
</label>
{{barcode}}
</div>
<button class="button button-positive button-block" ng-click="scanBarcode()">Scan!</button>
<button class="button button-positive button-block" ng-click="scanThis()">Scan this!</button>
</form>
就像一个输入和两个按钮一样简单来设置&#34;条形码&#34; var值。 当我加载视图时,它可以工作,我可以单击按钮并更改值,但是一旦我更改输入值,函数就会停止工作....
编辑1: 不,我没有忘记&#34;链接&#34;对控制器的看法,我有以下代码:
.state('tab.dash', {
url: '/dash',
views: {
'tab-dash': {
templateUrl: 'templates/tab-dash.html',
controller: 'ExampleController'
}
}
})
编辑2: 如果我使用:
<form ng-controller="ExampleController">
它起作用,如果我使用&#34; $ parent&#34;像这样:
<input type="number" placeholder="Code?" ng-model="$parent.barcode">
这意味着使用&#34;状态&#34;没有像我预期的那样工作......它创造了一个本地的&#34;修改时的输入范围......
答案 0 :(得分:2)
您忘记添加ng-controller指令。
<form ng-controller="ExampleController">
<div class="list list-inset">
<label class="item item-input">
<input type="number" placeholder="Code?" ng-model="barcode">
</label>
{{barcode}}
</div>
<button class="button button-positive button-block" ng-click="scanBarcode()">Scan!</button>
<button class="button button-positive button-block" ng-click="scanThis()">Scan this!</button>
</form>
答案 1 :(得分:0)
我认为您的问题与not having a dot in your ng-model有关。我不能100%确定没有Plunkr来证明这个问题,但如果我在解决这个问题,这将是我看的第一个地方。
顺便说一句,范围内的问题是我更喜欢使用John Papa推荐的the vm variable and "controller as" syntax的原因。