Angularjs 为什么我的角度代码不工作?
作为学习练习,我用angular编写了这个简单的代码,但我不明白为什么我在浏览器中得到了错误的结果 我在浏览器中看到的结果是文本“{{helloMessage}}”,而不是“HelloWorld” 守则:Angularjs 为什么我的角度代码不工作?,angularjs,Angularjs,作为学习练习,我用angular编写了这个简单的代码,但我不明白为什么我在浏览器中得到了错误的结果 我在浏览器中看到的结果是文本“{{helloMessage}}”,而不是“HelloWorld” 守则: <!DOCTYPE html> <html lang="en" ng-app> <head> <meta charset="UTF-8"> <title>Hello World</title> </head>
<!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.js"></script>
<script type="text/javascript">
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
</script>
</body>
</html>
你好,世界
{{helloMessage}}
函数HelloWorldCtrl($scope){
$scope.hellomemessage=“你好世界”;
}
这是输出,我在浏览器中没有看到任何错误:
检查此工作状态这是您的代码工作正常!!!!!! 函数HelloWorldCtrl($scope){ $scope.hellomemessage=“你好世界”; }
{{helloMessage}}
您的代码不起作用有几个原因
angular.module('app', [])
.controller('HelloWorldCtrl',HelloWorldCtrl);
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
$inject
属性,可以确保在运行时注入您的$scope
参数,如下所示:
angular.module('app', [])
.controller('HelloWorldCtrl',HelloWorldCtrl);
HelloWorldCtrl.$inject = ['$scope'];
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
通过这些更改,代码可以正常工作。请参见您的代码很好。只需在ng控制器之前注入src,即
。确保angular.js
文件位于根目录中。您的代码是plunker:
{{helloMessage}}
函数HelloWorldCtrl($scope){
$scope.hellomemessage=“你好世界”;
}
更新:我想您对angular.js的src不在根目录下。尝试删除
并添加
在它的位置。当您想要在HTML中呈现angularJs应用程序变量时,它必须在angular上下文中定义。因为这个函数不是在angular上下文中定义的,而是作为javascript函数定义的,所以它不起作用
函数HelloWorldCtrl($scope){$scope.helloMessage=“Hello World”}可能是angular.js,无法正确导入!!!angular.js确实正确导入。您创建了一个函数
HelloWorldCtrl
而不是ng控制器
@gaurav bhavsar=>您能解释一下我做错了什么吗这可能会有帮助:不是真的,兄弟,请看我的答案和正在工作的plunker。他只是在控制器后面注射了angularjs。我值得你投一票:P@AlexRumbaNicked你说得对,我投了你一票。不过我还是不喜欢,这对一个刚接触Angular的人来说有点太僵硬了,他应该学习最佳实践和正确的设置方法。是的,但他的问题集中在一件事上,而你只是用佳能杀死了苍蝇:)。你应该为你的解释投赞成票:)但是他的代码不起作用不是因为你提供的原因。你的兄弟在哪里??我的意思是,你提供的资料一定不完整。你有类似于brother.html的东西吗?你检查过我的东西了吗?我看不到你对这个问题的任何解释。@Alex Rumba在重新处理控制器的工作后,如果注入src,他会记错。@hadiJZ那么他的问题一定是他的问题的根源angularjs@Yanshof你能改变你的资料来源吗。但必须在顶部注入src
angular.module('app', [])
.controller('HelloWorldCtrl',HelloWorldCtrl);
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
angular.module('app', [])
.controller('HelloWorldCtrl',HelloWorldCtrl);
HelloWorldCtrl.$inject = ['$scope'];
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
<script src="angular.js"></script>
<h1 ng-controller="HelloWorldCtrl">{{helloMessage}}</h1>
<script type="text/javascript">
function HelloWorldCtrl($scope){
$scope.helloMessage = "Hello World";
}
</script>