【发布时间】:2015-09-20 13:49:09
【问题描述】:
我正在使用 HTML 页面通过 $scope 从 Angular.js 页面调用函数。无论我做什么,我的结果都会显示为 {{heading + message}} 而不是 Hello (+) 用户名。 (见下面的代码)。我觉得这是无法从我的 js 文件调用,或者根本无法调用 Angular 库的问题。
我从 Angular.js 网站测试了一个示例,它运行良好,所以我认为它无法调用该文件。我尝试过相对路径和直接路径,但似乎都不适用于调用 first.js 文件。
不运行node.js服务器会不会是个问题?
这是 HTML 和 JS 代码(我的代码在 Stackflow 的测试仪上完美运行,但在我的计算机上却不行)
var firstApp = angular.module('firstApp', []);
firstApp.controller('FirstController', function($scope) {
$scope.first = 'Some';
$scope.last = 'One';
$scope.heading = 'Message: ';
$scope.updateMessage = function() {
$scope.message = 'Hello ' + $scope.first +' '+ $scope.last + '!';
};
});
<!doctype html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.js"></script>
<script scr="C:\Users\Administrator\Documents\AngularTesting\js\first.js"></script>
<title>Name App</title>
</head>
<body ng-app="firstApp">
<div ng-controller="FirstController">
<span>Name:</span>
<input type="text" ng-model="first">
<input type="text" ng-model="last">
<button ng-click='updateMessage()'>Message</button>
<hr>
{{heading + message}}
</div>
<!--<script scr="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.min.js"></script>-->
</body>
</html>
【问题讨论】:
-
angular 并不意味着在没有服务器的情况下从本地浏览器窗口运行。
-
打开控制台出现错误说明您的问题
-
@dfsq 你是什么意思?命令提示符还是 node.js shell?抱歉,我对这些东西真的很陌生
-
我的意思是浏览器开发者工具。在 chrome 中按 F12 进入 javascript 控制台。
-
正如许多人所提到的,该页面需要从服务器提供。如果您使用的是 Windows,请查看一些 Microsoft 免费 开发工具:WebMatrix 或 VisualStudio Express 两者都带有 IIS Express 作为开发 Web 服务器。
标签: javascript html angularjs node.js