我有一个名为fightcard的指令app。在我的应用程序配置中,我使用ui-router来更改状态。这段代码有用......
$stateProvider
.state('matches', {
url: '/matches',
template: '<fightcard matches="matches"></fightcard>'
})
但是......我想知道控制器之类的状态是否只是传递指令而不是html模板。我想做这样的事情:
$stateProvider
.state('matches', {
url: '/matches',
directive: 'fightcard',
directiveModels: ['matches']
})
html模板选项并不是那么糟糕 - 它可能实际上是优越的 - 只是想知道是否有更多“角度方式”的替代方案,或者html模板可能是首选方法。每个匹配都有最佳游戏的子视图...可能最好让指令包含一个简单的html模板,如下所示:
$stateProvider
.state('matches', {
url: '/matches',
templateUrl: 'partials/matches.html'
})
.state('matches.games', {
url: '/games',
templateUrl: 'partials/games.html'
})
matches.html模板
<fightcard matches="matches"></fightcard>
games.html模板
<h6>BEST OF 5 GAMES</h6>
<div ng-repeat="gameModel in games">
<game gamemodel="gameModel" class="centerText"></game>
</div>
答案 0 :(得分:1)
将指令放在模板中是 在AngularJS中使用该指令的方式。
如果您想获得幻想,可以使用$stateProvider的.state()
方法扩展.decorator()
来解析您的特殊配置并为您创建该模板,但它确实是一个关于使用该指令的几乎所有方法。