AngularJS修改model值时,显示内容不变

前端之家收集整理的这篇文章主要介绍了AngularJS修改model值时,显示内容不变前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一段很简单的AngularJs代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <Meta charset="utf-8">
  5. <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
  6. </head>
  7. <body ng-app="">
  8.  
  9. <input type="text" ng-model="name"><br />
  10. <span>{{name}}</span>
  11.  
  12. </body>
  13. </html>

网页上回显示一个文本框,输入值,文本框下面会显示所输入的内容

简单修改一下代码

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <Meta charset="utf-8">
  5. <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
  6. </head>
  7. <body ng-app="myApp">
  8.  
  9. <input type="text" ng-model="name"><br />
  10. <span>{{name}}</span>
  11.  
  12. </body>
  13. </html>
这次当输入内容时,不会显示输入信息了,同时AngularJs表达式也不能被解释了。

感觉是因为Angular默认不存在myApp的对象,所以angular找不到对应的应用程序。

继续修改代码,为myApp重写controllar:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <Meta charset="utf-8">
  5. <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
  6. </head>
  7. <body ng-app="myApp" ng-controller="myCtrl">
  8.  
  9. <input type="text" ng-model="name"><br />
  10. <span>{{name}}</span>
  11.  
  12. <script>
  13. var app = angular.module('myApp',[]);
  14. app.controller('myCtrl',function($scope) {
  15. $scope.name = "John Doe";
  16. });
  17. </script>
  18. </body>
  19. </html>

这次执行代码又可以更新输入内容了。


由此可见AngularJs需要一个默认的app,当默认的app不存在的时候,需要对app编写相应的controllar.

猜你在找的Angularjs相关文章