像我一样有类似的问题,但他们无法帮助我。
HTML:
<!DOCTYPE html>
<html>
<head>
<title>Test-Site</title>
<script src="scripts/angular.js"></script>
<script src="scripts/angular-route.js"></script>
<script src="~/App_Data/mainApp.js"></script>
<script src="~/Controllers/testController.js"></script>
</head>
<body>
<div ng-app="~/App_Data/mainApp" ng- controller="~/Controllers/testController">
Write your Name:<input type="text" ng-model="name.firstName" />
Your Name: {{name.firstName}}
</div>
main.app.js:
var mainApp = angular.module("mainApp", []);
test.controller.js:
mainApp.controller("testController", function ($scope) {
$scope.name = { firstName: "Peter" };
});
Chrome控制台会出现以下错误: Test.html:8 GET http://localhost:55835/~/Controllers/testController.js Test.html:7 GET http://localhost:55835/~/App_Data/mainApp.js angular.js:63未捕获错误:[$ injector:modulerr]无法实例化模块〜/ App_Data / mainApp,原因如下: 错误:[$ injector:nomod]模块&#39;〜/ App_Data / mainApp&#39;不可用!您要么错误拼写了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。
一切都很好,直到我将js文件移动到他们的文件夹中。 我做错了什么?
答案 0 :(得分:1)
您在客户端页面中使用服务器端路径~/
。您不能以这种方式使用服务器端路径。您需要提供从站点根目录到文件的完整路径;最有可能的是,删除~/
就足够了。
作为旁注,通常App_Data
文件夹用于数据库文件和其他服务器资源;放置mainApp.js
文件似乎是一个奇怪的地方。