首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角HotTowel -datacontext未定义

角HotTowel -datacontext未定义
EN

Stack Overflow用户
提问于 2014-05-27 20:30:46
回答 1查看 1.2K关注 0票数 1

**

有人能说出我为什么得到以下信息吗?

**

代码语言:javascript
复制
[shell]  Hottowel Angular loaded! null

TypeError:未定义不是Object.fn (/Script/ app /services/directives.js:162:33)在作用域上的函数,在作用域为$文摘(/Script/angular.js:12251:29),$apply(/Script/angular.js:12516:24)在45(/Script/angular.js:8204:45)的XMLHttpRequest.xhr.onreadystatechange (/Script/angular.js:8412:7)的XMLHttpRequest.xhr.onreadystatechange(/Script/angular.js:8351:11)未定义的应用程序上。不是函数对象ReferenceError:在新仪表板(/Script/app/ dashboard /dashboard.js:20:20)的getMessageCount (/Script/app/dashboard/dashboard.js:29:20)、新仪表板(/Script/app/dashboard/dashboard/dashboard.js:20:9)、Object.instantiate (/Script/angular.js:3869:17)、Object.instantiate(/Script/angular.js:3880:23)、Object.instantiate(/Script/angular.js:3880:23)、Object.instantiate(/Script/angular.js:3869:17)上未定义数据文本。地址:6538:34 at forEach (脚本/angular.js:330:20) at nodeLinkFn (脚本/angular.js:6525:11),compositeLinkFn (/Script/angular.js:5986:15)

以下是我的资料

代码语言:javascript
复制
 <!-- Vendor Scripts -->
<script src="../Scripts/jquery-2.1.1.js"></script>
<script src="../Scripts/angular.js"></script>
<script src="../Scripts/angular-route.js"></script>
<script src="../Scripts/angular-animate.js"></script>
<script src="../Scripts/angular-sanitize.min.js"></script>
<script src="../Scripts/bootstrap.js"></script>
<script src="../Scripts/toastr.min.js"></script>
<script src="../Scripts/ui-bootstrap-0.6.0.js"></script>

<!-- PouchDB -->
<script src="../Scripts/angular-pouchdb.js"></script>

<!-- Bootstrapping -->
<script src="../Scripts/app/app.js"></script>
<script src="../Scripts/app/config.js"></script>
<script src="../Scripts/app/config.exceptionHandler.js"></script>
<script src="../Scripts/app/config.route.js"></script>

    <!--common Modules -->
<script src="../Scripts/app/common/common.js"></script>
<script src="../Scripts/app/common/logger.js"></script>
<script src="../Scripts/app/common/spinner.js"></script>

<!-- common.bootstrap Modules -->
<script src="../Scripts/app/common/bootstrap/bootstrap.dialog.js"></script>


<!-- app -->
<script src="../Scripts/app/dashboard/dashboard.js"></script>
<script src="../Scripts/app/layout/shell.js"></script>
<script src="../Scripts/app/layout/sidebar.js"></script>

<!-- app Services -->
<script src="../Scripts/app/services/datacontext.js"></script>
<script src="../Scripts/app/services/directives.js"></script>

我的仪表板在下面

代码语言:javascript
复制
var controllerId = 'dashboard';
angular.module('app').controller(controllerId, ['common', 'datacontext', dashboard]);

function dashboard(common) {
    var getLogFn = common.logger.getLogFn;
    var log = getLogFn(controllerId);

    var vm = this;
    vm.news = {
        title: 'Hot Towel Angular',
        description: 'Hot Towel Angular is a SPA template for Angular developers.'
    };
    vm.messageCount = 0;
    vm.people = [];
    vm.title = 'Dashboard';

    //Call Active Init
    activate();

    function activate() {
        var promises = [getMessageCount(), getPeople()];
        common.activateController(promises, controllerId)
            .then(function () { log('Activated Dashboard View'); });
    }

    function getMessageCount() {
        return datacontext.getMessageCount().then(function (data) {
            return vm.messageCount = data;
        });

    }

    function getPeople() {
        return datacontext.getPeople().then(function (data) {
            return vm.people = data;
        });

    }
}

})();

为什么数据文本没有定义?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-27 20:34:16

您没有在dashboard定义中加载它。

在这里,您定义了一个控制器,并注入了两个依赖项,commondatacontext,这很好:

代码语言:javascript
复制
angular.module('app').controller(controllerId, ['common', 'datacontext', dashboard]);

但是在这里,您将dashboard函数(控制器定义中的最后一个参数)定义为只有一个参数:

代码语言:javascript
复制
function dashboard(common)

....so,您正在注入的datacontext实际上被忽略了。您应该将dashboard定义更改为:

代码语言:javascript
复制
function dashboard(common, datacontext) {
   ...
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23898365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档