Javascript Angularjs编辑和保存
如果正在处理此表单,则可能会更改项目的名称和邮件。 但是当我看到这个链接时,我发现我在风格上犯了一些错误,但是现在它不再起作用了 我真的不知道为什么。它显示Javascript Angularjs编辑和保存,javascript,html,angularjs,Javascript,Html,Angularjs,如果正在处理此表单,则可能会更改项目的名称和邮件。 但是当我看到这个链接时,我发现我在风格上犯了一些错误,但是现在它不再起作用了 我真的不知道为什么。它显示{{vm.name}和{{{vm.email}},但不显示名称,也不隐藏在单击编辑按钮时显示的输入和按钮 这是来自plunker的链接。 angular .模块(“表格”,[]) .控制器(“LocationFormCtrl”,LocationFormCtrl); 函数LocationFormCtrl(){ var vm=这个; vm.nam
{{vm.name}
和{{{vm.email}}
,但不显示名称,也不隐藏在单击编辑按钮时显示的输入和按钮
这是来自plunker的链接。
angular
.模块(“表格”,[])
.控制器(“LocationFormCtrl”,LocationFormCtrl);
函数LocationFormCtrl(){
var vm=这个;
vm.name='henk';
vm.mail='gmail';
vm.editorEnabled=false;
var服务={
姓名:姓名,,
邮件:邮件,,
enableEditor:enableEditor,
editorEnabled:editorEnabled,
disableEditor:disableEditor,
保存:保存
};
回程服务;
函数启用编辑器(){
vm.editorEnabled=true;
vm.editName=vm.name;
vm.editMail=vm.email;
}
函数save(){
vm.name=vm.editName;
vm.email=vm.editMail;
禁用编辑器();
}
函数禁用编辑器(){
vm.editorEnabled=false;
}
}
{{vm.name}
{{vm.email}
姓名:
电邮:
您可以使用角度控制器的此
语法来避免$scope
,或者只使用$scope
我纠正了您的错误,您必须在html视图中使用as
语法,并将所有数据绑定到控制器中的此
对象。
请注意plunker中的以下几点:
ng controller=“LocationFormCtrl作为vm”
在html中,将所有内容绑定到vm
,如ng单击=“vm.save()”
在控制器中,将所有内容绑定到此
或其别名。。比如vm.enableEditor=function(){/\\
如果你想用
$scope
的方式来做这件事,那么看看这个它的原因是,正如你所看到的,引用的是ng控制器中的控制器,
它是约翰·帕帕结构
有关更多信息,请查看
您使用的angularjs版本是什么?我看到ng click只存在于angularjs中,而您的plunker也使用angularjs。但是github repo是关于angular2的?有可能您无意中混合了这两个版本吗?据我所知,我使用的是angularjs,但如果它是混合的,那么我犯了一个错误。链接到johnpaa/angular的坏urlch是关于Angular2的。固定url链接到angularjs样式指南,因此您使用了正确的;)谢谢您的回答。我还有一个问题。它如何与ng click一起工作,它被更改为“ng click=”vm.save()“。当我单击按钮时,只有按钮没有响应。@A.Berg:ng show property
editorEnabled
也需要绑定到vm
,然后才能工作。请参阅此更新。单击保存时请参阅控制台。”。