Angularjs ui路由器主路由

Angularjs ui路由器主路由,angularjs,Angularjs,我在angularjs中使用ui路由器插件()。下面是代码片段: $stateProvider.state('home', { url: '', controller: function() { console.log('home controller'); }, onEnter: console.log('home onEnter') }); 当url为“/”时,我在控制台中只收到“home-oneter

我在angularjs中使用ui路由器插件()。下面是代码片段:

$stateProvider.state('home', {
            url: '',
            controller: function() { console.log('home controller'); },
            onEnter: console.log('home onEnter')
        });

当url为“/”时,我在控制台中只收到“home-oneter”消息,当url为空时,我同时收到这两条消息。为什么会这样?如果你关注和/或相信严格的SEO准则,你应该考虑不同。


控制器是否为两个地址都触发?不包括搜索引擎优化,我看不出任何问题。也许如果您使用$location.$$path,这可能会是一个问题,尽管我建议避免将任何逻辑建立在这些方法上。

我根本不关心SEO,我只是在努力理解如何工作。例如,如果我写了三种不同的状态,比如home、user和files,并放置了像/home、/users、/files这样的URL,然后转到“/”,我会为每个状态执行oneter。但是怎么,我没有进入任何一个。完全困惑如果你做一个jsfiddle,我很乐意看看这个问题。