0

我刚开始使用 AngularJS,我刚收到几个问题,希望你能帮助我解决这些问题。

具有(例如)以下js文件夹结构:

+---admin
|   |   ai-constants.js
|   |   commons.js
|   |   
|   +---modules
|   |       searcher.js
|   |

constants.js是我试图将它用作依赖项的文件,searcher.js这是它的内容:

var aiConstants = angular.module("aiConstants", []);

aiConstants.factory("user", function () {
    return {
        ahaha: 0,
    }
});

aiConstants.factory("tagCategory", function () {
    return {
        none: 0,
        artisticMovement: 1,
        technicalMaterials: 2,
        art: 3,
        organizations: 4,
        professionals: 5,
    }
});

这是一些内容searcher.js

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

app.controller('SearcherController', function($scope, $http) {

    $http.get('/api/search/tags/'+tagCategory.art).success(function(data) {
        $scope.tiposDeArte = data;
    });

为了测试它是否有效,我尝试加载js文件:

<script type="text/javascript" src="js/admin/ai-constants.js"></script>
<script type="text/javascript" src="js/admin/modules/searcher.js"></script>

但是,不行!所以我想知道:

  1. 我做得对吗?
  2. 有没有办法js从路径加载文件作为依赖项(主要包含文字对象)?

更新

我得到的错误是:

未捕获的错误:没有模块:tagCategory

4

1 回答 1

1

您的searcher模块需要为该aiConstants 模块定义一个依赖项。然后你可以从你需要的那个模块注入服务。所以,它看起来像这样:

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

app.controller('SearcherController', function($scope, $http, tagCategory) {

    $http.get('/api/search/tags/'+tagCategory.art).success(function(data) {
        $scope.tiposDeArte = data;
    });
于 2013-06-19T18:41:15.327 回答