【发布时间】:2023-03-19 22:57:02
【问题描述】:
学习 angular.js 并拥有这个简单的代码,但不明白如何更改控制器中“name”变量的值。
HTML:
<!DOCTYPE html>
<html lang="en" ng-app ng-controller="AppCtrl">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script>
<script src="../js/controller.js"></script>
</head>
<body>
<h1>Hello, {{name}}</h1>
<input type="text" ng-model="name">
</body>
</html>
Controller.js代码如下:
function AppCtrl($scope){
$scope.name = "World";
}
在我添加控制器之前,<h1> 标记会根据输入字段中输入的内容动态更改。但是当添加控制器时,H1 标签的值总是:
“你好,{{name}}”(这是浏览器中逐个字符显示的内容)
谁能解释一下为什么以及如何使用控制器方法更改“H1”标签的值?
【问题讨论】:
-
你还没有添加你的JS和HTML代码@Web-dev
-
对不起。不得不重新格式化代码
-
你必须在你的控制器中定义你的:
var myApp = angular.module('myApp', []);,然后<html ng-app="myApp">我以myApp为例......你还必须注册你的控制器:myApp.controller('AppCtrl', AppCtrl); -
我不明白你所指的变量声明。你能解释一下这是什么意思吗?另外,如果我有多个控制器,我是否必须在每个控制器方法中都有该声明?
-
...下次使用控制台中的错误帮助您寻找解决方案