簡體   English   中英

AngularJS無法讀取未定義的屬性

[英]AngularJS Cannot read property of undefined

我正在嘗試獲取日期值。 每當未選中該復選框且日期選擇器不可見時,我都會收到錯誤消息:“無法讀取未定義的屬性'NTLI'”。 如果選中該復選框並且可見日期選擇器,則一切正常

<md-checkbox ng-model="user.NTLI" layout="row" ng-disabled="userForm.$invalid">
  NTLI
</md-checkbox>
<div ng-show="user.NTLI">
<fieldset class="standard">
    <legend>NTLI</legend>
    <md-input-container>
        <label>Efective date</label>
        <md-datepicker ng-model="user.efectiveDateNTLI"></md-datepicker>
    </md-input-container>
</fieldset>
</div>
var efDate = '';
if ($scope.user.NTLI != undefined) 
{
    efDate = $scope.user.efectiveDateNTLI
}

您需要由用戶定義,

$scope.user ={};
if ($scope.user.NTLI != undefined) 
{
    efDate = $scope.user.efectiveDateNTLI
}

如果您的user對象是什么,初始值是多少? 您首先需要對其進行初始化才能從$scope進行訪問。

$scope.user = {};

由於user不可用,因此在讀取其屬性時顯示undefined 只需添加以下內容:

$scope.user = {};

在您的控制器中。

ng-init上分配user = {}

喜歡

<div ng-init="user = {}"> 
...
..//code
...
</div>

但是其他答案也是正確的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM