2015-10-03 71 views
0

您好我是AngularJS中的新成员。 这是我的index.html文件 http://clip2net.com/s/3oknPG6无法在控制器之间共享数据AngularJs

<!doctype html> 
<html ng-app="app"> 
    <head> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.15/angular-ui-router.min.js"></script> 
     <meta charset="utf-8"> 
     <meta name="description" content=""> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     <title>Angular route</title> 
     <link rel="stylesheet" href="css/style.css"> 
     <link rel="author" href="humans.txt"> 
     <script src="angular.js"></script> 
     <script src="node_modules/angular-ui-router/release/angular-ui-router.min.js"></script> 
     <script src="app/app.js"></script> 
     <style> 
     body { 
      padding: 20px; 
     } 
     </style> 


    </head> 
    <body> 
    <div ng-view></div> 

    <script src="js/main.js"></script> 

    </body> 
</html> 

这是app.js文件:

angular.module("app", ["ui.router"]) 


.config(function config($stateProvider){ 
     $stateProvider.state("index", { 
      url:"", 
      controller: "FirstCtrl as first", 
      templateUrl: "templates/first.html" 
     }) 
    }) 

.controller("FirstCtrl", function FirstCtrl(){ 
      var first = this; 
      first.greeting = "First"; 
     }); 

和first.html文件:

<input type="text" ng-model="first.greeting"/> 
    <div ng-class="first.greeting">{{first.greeting}}</div> 

我不能得到数据查看,请帮我解决这个问题。另外我得到这个错误:无法读取未定义的属性'isDefined'。

+0

http://stackoverflow.com/a/14168699/4161269 –

+0

@AnikIslamAbhi这是位先进水平的东西。 –

回答

0

您正在您的index.html中加载您的'ui-router'依赖两次。也许这是问题?在包含angular.min.js后,只需加载你的UI路由器。

0

我相信问题是与配置...

controller: "FirstCtrl as first" 

还有就是你可以使用controllerAs场。试试这个:

controller: "FirstCtrl" 
controllerAs: "first" 

这应该有希望解决未定义的“isDefined”问题。字面意思是寻找一个名为“FirstCtrl as first”的控制器。

希望这会有所帮助。

0

什么是<script src="js/main.js"></script><script src="app/app.js"></script>也已加载UI路由器的两倍,通过写

ng-class="first.greeting" 
删除 <script src="node_modules/angular-ui-router/release/angular-ui-router.min.js"></script> 也是我不知道你想在你看来first.html文件来达到什么

ngClass指令允许您通过数据绑定表示要添加的所有类的表达式来动态设置HTML元素上的CSS类。 More Info on ng-class

相关问题