我收到错误" TypeError:无法读取属性' userid'未定义"
这是我的控制器
.controller('tambahTemanCtrl',function($scope,$ionicPopup,temanService){
$scope.showAlert = function(msg) {
$ionicPopup.alert({
title: msg.title,
template: msg.message,
okText: 'Ok',
okType: 'button-positive'
});
};
$scope.simpan = function (){
if (!$scope.datateman.userid){
$scope.showAlert({
title: "Information",
message: "UserID cant be blank"
});
else{
var data = {
Userid: $scope.datateman.userid,
Address: $scope.datateman.address,
Employeeid: $scope.datateman.employeeid,
Email: $scope.datateman.email,
Phoneno: $scope.datateman.phoneno,
Password: $scope.datateman.password,
Division: $scope.datateman.division,
Leavebalance: $scope.datateman.leavebalance
};
var dataCollection = [];
for(var item in data){
if(data.hasOwnProperty(item)){
dataCollection.push(data[item]);
}
}
var DTO = {
Value: dataCollection.join('|')
};
//do not use success. its obsolete
temanService.create(DTO).then(function(response){
},function(response){
//error
});
}
};
});
这是我的HTML
<ion-header-bar class="bar-positive">
<h1 class="title">Add User</h1>
</ion-header-bar>
<ion-content class="padding">
<form>
<ion-list>
<label class="item item-input">
<input type="text" ng-model="datateman.userid" placeholder="UserID">
</label>
<label class="item item-input">
<input type="text" ng-model="datateman.fullname" placeholder="Fullname">
</label>
<label class="item item-input">
<input type="text" ng-model="datateman.password" placeholder="Password">
</label>
</ion-list>
<div class="spacer" style="height: 5px;"></div>
<button class="button icon ion-person-stalker button-balanced button- block" ng-click="simpan();"> Save</button>
</form>
</ion-content>
当我运行代码时会发生这种情况。 我正在使用离子框架和视觉工作室代码。 你能告诉我,我做错了吗? 感谢您的帮助
答案 0 :(得分:3)
在检查其属性的有效性之前,应首先初始化datateman
对象。像这样:
$scope.datateman = {};
$scope.simpan = function (){
//the interpreter looks for 'datateman' object in order to check for 'userid' existence
if (!$scope.datateman.userid){
$scope.showAlert({
title: "Information",
message: "UserID cant be blank"
});