Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么';我的Hello World AngularJS应用程序有什么问题?_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 什么';我的Hello World AngularJS应用程序有什么问题?

Javascript 什么';我的Hello World AngularJS应用程序有什么问题?,javascript,html,angularjs,Javascript,Html,Angularjs,这是代码,不知道为什么不起作用。已将angular.min.js文件与index.html <!doctype html> <html lang="en" ng-app> <head> <meta charset="utf-8"> <title>Hello World</title> </head> <body> <h1 ng-controller="HelloWorld

这是代码,不知道为什么不起作用。已将
angular.min.js
文件与
index.html

<!doctype html>
<html lang="en" ng-app>
<head>
    <meta charset="utf-8">
    <title>Hello World</title>
</head>
<body>
    <h1 ng-controller="HelloWorldCtrl">{{helloMessage}}</h1>

    <script src="angular.min.js"></script>
    <script type="text/javascript">
        function HelloWorldCtrl($scope) {
            $scope.helloMessage = "Hello World";
        }
    </script>
</body>
</html>

你好,世界
{{helloMessage}}
函数HelloWorldCtrl($scope){
$scope.hellomemessage=“你好世界”;
}

这是声明控制器的旧语法。现在您不能将angualar控制器声明为全局函数,您应该使用
angular.module(“appName”,“[]).controller(“CtrlName”,function(){})取而代之

将脚本重写为:

var app = angular.module("myApp",[]);
app.controller("HelloWorldCtrl($scope){
  $scope.helloMessage = "Hello World";
}
并将html文件的第二行更改为

<html lang="en" ng-app="myApp">

Angular是一个完整的框架,而不仅仅是这样一个简单的调用。实际上,您需要执行以下操作(通常在js文件中):

它的HTML是

<!doctype html>
<html lang="en" >
<head>
    <meta charset="utf-8">
    <title>Hello World</title>
    <script src="angular.min.js"></script>
</head>
<body ng-app="myapp">
    <h1 ng-controller="HelloWorldCtrl">{{helloMessage}}</h1>


    <script type="text/javascript">
    angular.module("myapp",[]).controller('HelloWorldCtrl', ['$scope', function($scope){
    $scope.helloMessage = "hello World";
    }]);
    </script>
</body>
</html>

你好,世界
{{helloMessage}}
angular.module(“myapp”、[]).controller('HelloWorldCtrl'、['$scope',function($scope){
$scope.hellomemessage=“你好世界”;
}]);
(请注意,这不是最佳实践,但为了帮助您入门,请参考此处我认为准确的最佳实践:)

试试这个

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="angular.js"></script>
    <script type="text/javascript">
        angular.module("HelloWorldApp", [])
        .controller("HelloWorldController", function ($scope) {
            $scope.helloWorld = "Hello World";
        })
    </script>
</head>
<body ng-app="HelloWorldApp" ng-controller="HelloWorldController">
    <h1>{{helloWorld || "undefined"}}</h1>
</body>
</html>

angular.module(“HelloWorldApp”,[])
.controller(“HelloWorldController”,函数($scope){
$scope.helloWorld=“你好世界”;
})
{{helloWorld | |“未定义”}

实际上,您应该将angular.min.js脚本放在页面顶部,并不是说将脚本放在正文底部不好,而是加载脚本的前期成本抵消了应用程序其余部分的成本。我不确定您是否应该在带有ng app属性的标记中使用controller函数。我一直这样做的方式是总是将我的控制器放在一个单独的.js文件中,并在我的HTML文档中使用引用它的标记。谢谢您的输入。两个都试过了,但都没用Edmine不会解决你的问题,只是对代码的评论哦,谢谢你。我也是这么想的;本教程已经过时了,它解释了声明控制器和其他实践的旧方法。我将把它放在HTML文档的标记中。与脚本位于
之后的位置相同。您可以像这样重写脚本
var-app=angular.module(“myApp”,[]);controller(“HelloWorldCtrl($scope){$scope.hellomemessage=“Hello World”;}
并将html文件第2行更改为
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="angular.js"></script>
    <script type="text/javascript">
        angular.module("HelloWorldApp", [])
        .controller("HelloWorldController", function ($scope) {
            $scope.helloWorld = "Hello World";
        })
    </script>
</head>
<body ng-app="HelloWorldApp" ng-controller="HelloWorldController">
    <h1>{{helloWorld || "undefined"}}</h1>
</body>
</html>