Сложность использования контроллера Angular из старого урока
Я просматриваю основную книгу по Angular, и она использует контроллер для настройки поля. Тем не менее, я не получаю ожидаемый результат. Поиск здесь и в другом месте, похоже, что я вызываю это правильно, но что-то не работает. Что-то явно не так? Что-нибудь еще попробовать? Подробности ниже. Благодарю.
HTML документа:
<html lang="en" ng-app ng-controller="AppCtrl">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="css/bootstrap.min.css">
<title></title>
<script src="js/angular.min.js"></script>
<script type="text/javascript" src="js/controller.js"></script>
</head>
<body>
<h1>Hello, {{name || 'World'}}</h1>
<input type="text" ng-model="name">
</body>
controller.js:
function AppCtrl($scope) {
$scope.name = "World";
(функция закрывающей скобки теряется при форматировании кода)
Ожидаемый вывод: "Hello, World", но я получаю "Hello, {{name || 'World'}}"
1 ответ
Решение
Вам не хватает ng-приложения и модуля в контроллере.
var app = angular.module('myApp', []);
DEMO
var app = angular.module('myApp', []);
app.controller('AppCtrl', function($scope, $http) {
$scope.name = "World";
});
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="myApp" ng-controller="AppCtrl">
<h1>Hello, {{name || 'World'}}</h1>
<input type="text" ng-model="name">
</div>
</body>
</html>