Angularjs ng如果不使用ng模型
我正在使用angularjs集成我的api 我在文本框中使用ng时遇到问题 下面是我的HTML代码片段:Angularjs ng如果不使用ng模型,angularjs,angularjs-ng-model,angular-ng-if,Angularjs,Angularjs Ng Model,Angular Ng If,我正在使用angularjs集成我的api 我在文本框中使用ng时遇到问题 下面是我的HTML代码片段: <input type="text" value="" data-ng-if="edit" ng-model="name"> <input type="text" value="" data-ng-if="!edit" ng-model="singleAppDetails.name"> 因此,如果edit为false,则应使用ng model=name进行绑定 如果
<input type="text" value="" data-ng-if="edit" ng-model="name">
<input type="text" value="" data-ng-if="!edit" ng-model="singleAppDetails.name">
因此,如果edit为false,则应使用ng model=name进行绑定
如果edit为true,则应使用ng model=singleAppDetails.name进行绑定
但它并没有像预期的那样约束它
此外,我使用$http.post将数据发布到服务器,如下所示:
$scope.addApp = function(){
$scope.apps = [];
$scope.apps.push({'name':$scope.name, 'domain':$scope.domain, 'appId':$scope.appId, 'secret':$scope.secret});
// Writing it to the server
//
var dataObj = {
name : $scope.name,
domain : $scope.domain,
appId : $scope.appId,
secret : $scope.secret
};
var res = $http.post('http://192.168.1.30:8090/apps/', dataObj);
res.success(function(data, status, headers, config) {
$scope.message = data;
});
res.error(function(data, status, headers, config) {
alert( "failure message: " + JSON.stringify({data: data}));
});
// Making the fields empty
//
$scope.name='';
$scope.domain='';
$scope.appId = '';
$scope.secret = '';
};
但它总是发送空数据。ng if有自己的作用域。因此,由第一个输入填充的name属性位于ng if范围内,而不是控制器范围内
如果控制器将singleAppDetails初始化为非null对象,则第二个输入应该可以正常工作:
$scope.singleAppDetails = {};
经验法则:在您的ng模型中始终有一个点。始终填充作用域中的对象,而不是作用域本身。ng如果有自己的作用域。因此,由第一个输入填充的name属性位于ng if范围内,而不是控制器范围内
如果控制器将singleAppDetails初始化为非null对象,则第二个输入应该可以正常工作:
$scope.singleAppDetails = {};
经验法则:在您的ng模型中始终有一个点。始终填充作用域中的对象,而不是作用域本身。ng如果正在创建子作用域,因为输入元素看不到控制器中定义的作用域变量,则有两种方法可以解决此问题
使用对象引用
前任:
$scope.user={name:}
在模板内部
您可以告诉angular在父范围而不是子范围中查找变量
ng if正在创建子范围,因为输入元素没有看到控制器中定义的范围变量。有两种方法可以解决此问题
使用对象引用
前任:
$scope.user={name:}
在模板内部
您可以告诉angular在父范围而不是子范围中查找变量
如果在div中,并且在您的任何位置将checkI not see edit设置为true和false,请尝试在ng中换行code@Sajeetharan@Sajeetharan请看我的上述评论。我尝试了这个,但没有成功。你能创建一个plnker吗?如果在div中,请尝试在ng中换行,并检查我看不到编辑在你的任何地方设置为true和falsecode@Sajeetharan@Sajeetharan请看我的上述评论。我试过了,但没有成功。你能创建一个plnker吗?