我无法实现ui.Grid angularJS扩展它给出404错误

时间:2015-02-26 10:05:07

标签: angularjs angular-ui

下面是我简单的AngularJS内容。当我运行代码时,我收到错误404错误。问题是它直接在TA文件夹下搜索ui.grid,我不知道为什么ui.grid没有查看/ TA / ui-grid / ui-grid文件夹下的文件? 我在TA / SiteAsstes / Scripts / uiGrid下创建了一个文件夹,在index.html中我引用了这个地方。为什么ui-grid直接在" TA"?

下搜索

我还有其他可行的AngularJS代码。所以想要理解为什么它直接搜索ui-grid" TA"文件夹而不是" / TA / SiteAssets / Scripts / uiGrid /"。

My folder structure looks like this:
/TA/SiteAssets/app.js
/TA/SiteAssets/index.html
/TA/SiteAssets/Scripts/angular.js   etc. etc.
/TA/SiteAssets/Scripts/uiGrid/ui-grid.css
/TA/SiteAssets/Scripts/uiGrid/ui-grid.js  etc. etc.
/TA/SiteAssets/Content

ERROR

 GET http://system123/TA/ui-grid/ui-grid 404 (NOT FOUND)

Error: [$compile:tpload] Failed to load template: ui-grid/ui-grid
http://errors.angularjs.org/1.3.5/$compile/tpload?p0=ui-grid%2Fui-grid
    at REGEX_STRING_REGEXP (angular.js:63)
    at handleError (angular.js:15946)
    at processQueue (angular.js:13075)
    at angular.js:13091
    at Scope.$get.Scope.$eval (angular.js:14291)
    at Scope.$get.Scope.$digest (angular.js:14107)
    at Scope.$get.Scope.$apply (angular.js:14395)
    at done (angular.js:9569)
    at completeRequest (angular.js:9756)
    at XMLHttpRequest.requestLoaded (angular.js:9697)angular.js:11500 (anonymous function)angular.js:8479 $getangular.js:13083 processQueueangular.js:13091 (anonymous function)angular.js:14291 $get.Scope.$evalangular.js:14107 $get.Scope.$digestangular.js:14395 $get.Scope.$applyangular.js:9569 doneangular.js:9756 completeRequestangular.js:9697 requestLoaded

app.js

var app = angular.module("app", ["ngTouch","ui.grid"]);

的index.html

<html ng-app="app">
<script type="text/javascript" src="/TA/SiteAssets/Scripts/angular.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/Scripts/angular-touch.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/Scripts/angular-animate.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/Scripts/angular-ui-tree.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/Scripts/uiGrid/ui-grid.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/Scripts/angular-ui-router.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/app.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/employeeController.js"></script>
<script type="text/javascript" src="/TA/SiteAssets/employeeService.js"></script>
<script type="text/javascript">
    app.controller('MainCtrl', ['$scope', function ($scope) {
        $scope.myData = [
          {
              "firstName": "Cox",
              "lastName": "Carney",
              "company": "Enormo",
              "employed": true
          },
          {
              "firstName": "Lorraine",
              "lastName": "Wise",
              "company": "Comveyer",
              "employed": false
          },
          {
              "firstName": "Nancy",
              "lastName": "Waters",
              "company": "Fuelton",
              "employed": false
          }
        ];
    }]);
</script></head>


<body>


<div ng-controller="MainCtrl">
    <div id="grid1" ui-grid="{ data: myData }" class="grid"></div>
</div>
</body>

</html>

3 个答案:

答案 0 :(得分:4)

我终于找到了问题。

我必须在我的in中包含另一个JS文件: /ui-grid-unstable.js"

参见示例:http://ui-grid.info/docs/#/tutorial/101_intro

但错误是非常混乱而且不清楚。

答案 1 :(得分:1)

@ethem,我昨晚在我的项目中遇到了同样的问题和错误信息,现在我发现我项目中出错的原因 - 实际上我在app.config中使用angular $ http拦截器将我的项目名称作为前缀添加到每个URL中,如 -

config.url = "myproject/" + config.url

(调试app.config) 所以在ui grid js执行期间,一些请求正在按照错误消息中显示的那样命中我的服务器 -

http://system123/TA/ui-grid/ui-grid 404 (NOT FOUND)

所以,我只是在拦截器中使用url conatining“ui-grid”来过滤请求,以避免ui-grid js命中我的服务器,一切都运行良好。

也许这个答案可以帮助你解决问题。

我正在使用这两个cdn文件 -

<script src="https://cdn.rawgit.com/angular-ui/bower-ui-grid/master/ui-grid.min.js"></script>
    <link href="https://cdn.rawgit.com/angular-ui/bower-ui-grid/master/ui-grid.min.css" rel="stylesheet" />

答案 2 :(得分:0)

通常我们希望人们通过凉亭或类似的工具安装网格 - 这样就可以正确地设置所有要找到的路径。您可以尝试这种方法,因为它可以为您提供更顺畅的升级路径。