【问题标题】:AngularJS with Entity Framework Core throws an error带有 Entity Framework Core 的 AngularJS 抛出错误
【发布时间】:2018-08-18 13:33:23
【问题描述】:

尝试在我的网站上运行 AnglarJS,只是执行简单的 $scope 变量,但无法使其工作并引发错误(附图片)。看起来很简单,但我尝试了一切,如果我遗漏任何陈述,请纠正我。使用 VS Code,实体框架核心。页面呈现完美。

Index.cshtml

<head>
@section scripts{
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular-resource.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular-route.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular-animate.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

<script src="~/SPA/pController.js"></script>
<script src="~/SPA/app.js"></script>
}

<div ng-app="app" ng-controller="pController">

<p{{ word }} /p>

app.js

var app = angular.module('app', ['ngRoute']);

app.controller('pController', pController);

pController.js

    var pController =  function($scope){
    $scope.data = null;
    $scope.word = "hello world";
};
pController.$inject = ['$scope'];

结果:

UDPATE

想通了,系统找不到 app.js 文件。将所有代码粘贴到 html 中都可以。

已解决

在这个问题上花了一天的时间后,我解决了这个问题,只需将我所有的 js Angular 逻辑放入 /wwwroot/js/... 我想不知何故我的项目只从该路径读取 js 文件。谢谢大家的帮助!

【问题讨论】:

  • 实体框架和你的问题有什么关系?
  • 需要在angularjs之前加载jquery
  • 在开发模式下,不要使用缩小的资源。它将帮助您解决错误。
  • 另外,&lt;p{{ word }} /p&gt;??我认为应该是&lt;p&gt;{{ word }}&lt; /p&gt;
  • 标签我只在此处更改,因为代码格式

标签: c# asp.net angularjs entity-framework entity-framework-core


【解决方案1】:

将 html 中的文件重新排序为:

  <script src="~/SPA/app.js"></script>
  <script src="~/SPA/pController.js"></script>

然后执行以下任何操作:

app.js:

var app = angular.module('app', ['ngRoute']);

p控制器:

  app.controller('pController',  function($scope){
        $scope.data = null;
        $scope.word = "hello world";
    });

或者

如果您正在使用缩小:

将你的 app.js 文件修改为:

var app = angular.module('app', ['ngRoute']);
app.controller('pController', ['$scope', pController]);

然后你的控制器文件:

 var pController =  function($scope){
    $scope.data = null;
    $scope.word = "hello world";
};

如果这仍然不起作用 :),请将整个代码放在一个 js 文件“app”中,然后尝试让我知道问题所在。

【讨论】:

  • 两种方法都试过了,还是不行。不知道是什么问题:(
  • app.controller('pController', ['$scope', pController)]; 不正确。应该是app.controller('pController', ['$scope', pController]);
  • @lealceldeiro 我之前修复过,同样的事情
  • @Coding 想通了,系统找不到 app.js 文件。将所有代码粘贴到 html 中都可以。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-02
  • 2016-12-20
  • 2020-03-19
  • 2023-03-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多