簡體   English   中英

AngularJS控制器對象未定義

[英]AngularJS controllers object is undefined

在以下代碼中,保存數據后, console.log(user)返回undefined 怎么了

<input type="text" class="form-control" id="inputEmail" placeholder="Name" ng-model="user.name">
<a class="btn btn-link pull-right" ng-click="save(user)">Save</a> 

控制器:

LControllers.controller( 'InstanceCtrl', ['$scope', 'Instance', 'User',
function ($scope, Instance , User) {
    $scope.user= '';
    $scope.save = function (user) {
        console.log(user)// undefined
        console.log(user.name)       
    };

JSFiddle: http : //jsfiddle.net/U3pVM/15248/

對我來說,這似乎很好

http://jsfiddle.net/U3pVM/15248/ JSFiddle

在輸入框中填充一些值后,代碼可以正常工作。 第一次用戶是一個空字符串,因此user.name將是未定義的。

是的,聲明對象的正確方法是

$scope.name = {};

$scope.name="";

我連接了一個快速的jsFiddle,看起來很好: http : //jsfiddle.net/tfqytchk/

當然,第一次按下保存用戶是一個空字符串,並且user.name是未定義的(我認為這就是您要報告的內容)。 如果您想更改該行為,請更改$scope.user = ''; $scope.user = { name: '' };

不要這樣聲明對象

      $scope.user= '';

像這樣聲明對象

      $scope.user= {};

暫無
暫無

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

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