2017-01-02 15 views
0

這裏的控制器不工作是一個片段:當我使用「NG-應用」

<!document html> 
<html ng-app> 
    <head> 
     <title>First</title> 
     <script src="D:\Coding\angular.min.js" type="text/javascript"></script> 
    </head> 
    <body> 
     <div ng-controller="FirstController"> 
      <input id="Text1" type="text" ng-model="user.name" /> 
      <div>{{user.name}}</div> 
     </div> 
     <script> 
      function FirstController($scope){ 
       $scope.user = {name: ""}; 
      }; 
     </script> 
    </body> 
</html> 

打開Chrome瀏覽器的HTML文件中,「{{user.name}}」就說明屏幕。我認爲{{}}位置應該與文本框內容相同,出了什麼問題?

+0

許多回復建議我定義一個模塊,並給'ng-app'屬性賦值'ng-app =「blablabla」'。是的,這將起作用,我已經嘗試了一下。但真正的問題是angular.js版本,我使用的是1.6版本,並且不支持它。 –

回答

0

它應該工作

DEMO

<!DOCTYPE html> 
 
<html ng-app> 
 

 
<head> 
 
    <script src="https://code.angularjs.org/1.2.3/angular.js"></script> 
 
</head> 
 

 
<body> 
 
     <div ng-controller="FirstController"> 
 
      <input id="Text1" type="text" ng-model="user.name" /> 
 
      <div>{{user.name}}</div> 
 
     </div> 
 
     <script> 
 
      function FirstController($scope){ 
 
       $scope.user = {name: "test"}; 
 
      }; 
 
     </script> 
 
    </body> 
 

 
</html>

+0

太棒了!非常感謝。你怎麼能記得版本更新,我很驚訝:) –

+0

@ T.skyone因爲我已經回答過同樣的問題。 :) upvote如果它有幫助 – Sajeetharan

+0

已upvoted但我的聲譽低於15 ..所以;;) –

1

您需要使用這樣的:

<ng-app="Your Module Name "> 

在控制器寫

var app=angular.module("your module name (can be anything)",[]).controller("myCtrl", function("your dependencies "){}); 

希望它會如果使用低於1.3角版本工作

1

在NG-應用屬性,你需要添加應用名稱,如ng-app =「myApp」

<div ng-app="myApp" ng-controller="myCtrl"> 

First Name: <input type="text" ng-model="firstName"><br> 
Last Name: <input type="text" ng-model="lastName"><br> 
<br> 
Full Name: {{firstName + " " + lastName}} 

</div> 

<script> 
var app = angular.module('myApp', []); 
app.controller('myCtrl', function($scope) { 
    $scope.firstName = "John"; 
    $scope.lastName = "Doe"; 
}); 
</script>