Angularjs $scope.passengerNo返回未定义的

Angularjs $scope.passengerNo返回未定义的,angularjs,Angularjs,我在接收角度表达式的值时遇到问题。 应该发生的是,当单击EndofPage按钮时,它应该通过passengerNo和标题。标题正在通过罚款,但乘客号始终未定义 你能告诉我怎么更新这个吗?因为passengerNo应该由一个textfield控制,我认为更新后的值应该自动注入 谢谢 //mainquote.html <ion-view view-title="{{title}}" can-swipe-back="true"> <ion-content

我在接收角度表达式的值时遇到问题。 应该发生的是,当单击EndofPage按钮时,它应该通过passengerNo和标题。标题正在通过罚款,但乘客号始终未定义

你能告诉我怎么更新这个吗?因为passengerNo应该由一个textfield控制,我认为更新后的值应该自动注入

谢谢

    //mainquote.html
    <ion-view view-title="{{title}}" can-swipe-back="true">
      <ion-content ng-controller="QuoteItemCtrl">
        <div class="card">
          <div class="item centerText" style="background-color: brown;">
            <h6 class="headerTextPadding">REGION</h6>
            <h2>{{title}}</h2>
          </div>
        </div>
        <div class="padding40Top padding20Bottom">
          <h2 class="centerText">Select number of Passengers</h2>
          <input ng-model="passengerNo" class="col col-50 col-offset-25 quoteTField" type="textfield">
          <h6 class="centerText">PASSENGERS</h6>
        </div>
        <div>
          <h6 class="logText centerText">SCHOOLS > {{title}} > {{getCost()}} > @ {{multiplier}}</h6>
        </div>
      </ion-content>
      <div class="endOfPageButton">
        <a href="#/app/home/finalquote">
          <button class="button button-full button-clear" ng-click="sendQuoteInfo()">Submit Quote</button>
        </a>
      </div>
    </ion-view>


    //controller.js
    app.controller('QuoteItemCtrl', function($scope, $rootScope, $stateParams, MakeSchoolQuote, DataThrow) {
      var item = DataThrow.getDataObject();
      $scope.passengerNo = 49;

      $scope.title = item;
      $scope.multiplier = MakeSchoolQuote.getMultipler(item);

      $scope.getCost = function() {
        $scope.pax = $scope.passengerNo;
        var cost = $scope.multiplier * $scope.passengerNo
        console.log("passenger numbers are" + $scope.pax);
        return cost;
      }

      $scope.sendQuoteInfo = function() {
        var data = [$scope.title, $scope.passengerNo, "N/A"];
        var sendData = DataThrow.storeDataObject(data);
      }
    })
//mainquote.html
区域
{{title}}
选择乘客人数
乘客
学校>{{title}}>{{getCost()}}>@{{multiplier}
//controller.js
app.controller('QuoteItemCtrl',函数($scope、$rootScope、$stateParams、MakeSchoolQuote、DataThrow){
var item=DataThrow.getDataObject();
$scope.passengerNo=49;
$scope.title=项目;
$scope.multiplier=MakeSchoolQuote.getmultiplier(项目);
$scope.getCost=function(){
$scope.pax=$scope.passengerNo;
风险值成本=$scope.multiplier*$scope.passengerNo
console.log(“乘客号为”+$scope.pax);
退货成本;
}
$scope.sendQuoteInfo=函数(){
var数据=[$scope.title,$scope.passengerNo,“不适用”];
var sendData=DataThrow.storeDataObject(数据);
}
})

1。请提供一个工作示例。2.当值已经绑定到
输入中的作用域模型时,为什么要在
ng click
中将值作为参数传递?是否将控制器连接到视图?输入字段是否被创建隔离作用域的任何内容(例如ngIf、ngRepeat等)包装?这将导致将passengerNo添加到隔离作用域中,而不是添加到用于控制器的作用域中。解决此问题的最简单方法是:向控制器添加
$scope.passengerNo=49
。此外,这不是
ngInit
应该使用的方法,请参阅。改为初始化控制器中的值。我已更新以显示HTML的更完整代码,并反映有关控制器中初始化的@Numyx注释。但是,在更改textfield时,$scope.sendQuoteInfo()的控制器中没有更新passengerNo。如果有人能发现问题,那就太好了,谢谢!