Nat*_*ini 2 javascript angularjs angular-route-segment
我正在使用 angular-route-segment 设置一个简单的路由配置,而 Angular 在应用加载时抛出此错误:
TypeError: Cannot read property 'untilResolved' of undefined
Angular 和 angular-route-segment 都没有提供任何更有用的错误消息方式。
应用程序.js:
(function () {
'use strict';
var app = angular.module('emailHandlerApp', [
// Angular modules
'ngAnimate', // animations
'ngRoute', // routing
'ngSanitize', // sanitizes html bindings (ex: topnav.js)
// 3rd Party Modules
'ui.bootstrap', // ui-bootstrap (ex: carousel, pagination, dialog)
'route-segment', // angular-route-segment
'view-segment', // angular-route-segment
]);
console.log("app loaded"); // just for debug!
})();
Run Code Online (Sandbox Code Playgroud)
config.route.js:
(function () {
'use strict';
var app = angular.module('emailHandlerApp');
// Configure the routes and route resolvers
app.config(function ($routeSegmentProvider, $routeProvider) {
$routeSegmentProvider.options.autoLoadTemplates = true;
$routeSegmentProvider.options.strictMode = true;
$routeSegmentProvider
.when('/', 'emailHandler')
.when('/unsubscribe', 'emailHandler.unsubscribe')
.when('/redirect', 'emailHandler.redirect')
// Base shell
.segment('emailHandle', {
templateUrl: 'app/shell.html',
controller: 'baseController',
controllerAs: 'vm',
})
.within()
// Dashboard
.segment('unsubscribe', {
templateUrl: 'app/unsubscribe/unsubscribe.html',
controller: 'unsubscribeController',
controllerAs: 'vm',
dependencies: ['emailId']
})
// Recruiting
.segment('redirect', {
templateUrl: 'app/redirect/redirect.html',
controller: 'redirectController',
controllerAs: 'vm',
dependencies: ['rdId']
})
;
$routeProvider.otherwise({ redirectTo: '/' });
})
})();
Run Code Online (Sandbox Code Playgroud)
回答我自己的问题,因为我 99% 确定我可能会在一个月后再次使用谷歌搜索。
这个非常简单 - 只是一个代码盲和一个稍微没有信息的错误消息的问题。angular-route-segment 当您的线段树中某处的名称不合适时会抛出此问题。
就我而言,我的.segment('emailHandle', { ... })意思是打错了emailHandler,然后在它击中.within(). 刚看到的时候觉得挺傻的。
| 归档时间: |
|
| 查看次数: |
993 次 |
| 最近记录: |