【发布时间】:2014-06-25 13:02:15
【问题描述】:
我在app.js 文件中设置了以下内容:
require('angular');
require('angular-ui-router');
var storelistingCtrl = require('./controllers/storeListingsCtrl');
var ngApp = angular.module('ngApp', ['ui.router'], function($interpolateProvider){
//-- as the output conflicts with blade lets alter the defaults
$interpolateProvider.startSymbol('[[');
$interpolateProvider.endSymbol(']]');
})
.config(['$stateProvider','$logProvider','$urlRouterProvider', function ($stateProvider, $logProvider,$urlRouterProvider) {
$logProvider.debugEnabled(true);
}])
//-- controllers
ngApp.controllers('storelistingCtrl', ['$scope', storelistingCtrl]);
在我的storelistingCtrl.js 文件中,我只有一个简单的输出来测试:
module.exports = function($scope) {
console.log('loaded');
};
但我收到以下错误:
Uncaught TypeError: undefined is not a function.
Error: [ng:areq] http://errors.angularjs.org/1.2.18/ng/areq?p0=storelistingCtrl&p1=not%20a%20function%2C%20got%20undefined
.....
我错过了什么吗?
更新
查看我的答案,一旦我在此处发布,请务必对其进行排序。
【问题讨论】:
-
您的控制器的
require似乎没有找到任何东西。你能仔细检查./controllers/storeListingsCtrl是控制器的正确相对路径吗?我注意到模块名称中Listing的大小写不同,而在变量名称中您使用小写...仅此一项并不意味着什么,但您可能有错字。 -
这就是我起初的想法,但如果我在要求阶段初始化 require('./controllers/storeListingsCtrl')() 然后我将“加载”输出到控制台,所以它似乎运行了吗??
-
不是真的...因为那样你是在自己调用函数,而不是有角度的。
-
@gtramontina 谢谢你让我仔细看,虽然我发现了错误
标签: angularjs gulp browserify