ion-nav-bar ng-class 没有样式
ion-nav-bar ng-class not styling
<ion-nav-bar ng-class="{'bar-positive': isAndroid, 'bar-stable': !isAndroid}">
</ion-nav-bar>
<ion-tabs ng-class="{'tabs-positive': isAndroid, 'tabs-icon-top': true}">
<!-- Account Tab -->
<ion-tab title="Account" icon="ion-ios7-gear" href="#/tab/account">
<ion-nav-view name="tab-account"></ion-nav-view>
</ion-tab>
</ion-tabs>
当我使用以下标记时,只有 ion-tabs 有样式,而 ion-nav-bar 没有。我怎样才能使它们都具有样式,为什么 ion-nav-bar 没有样式?
好的,没关系。 There's an issue for this on github. 另外,我发现了一个有点复杂的解决方法,在他们修复 ion-nav-bar 指令之前应该没问题:
<ion-nav-bar class="{{ isAndroid ? 'bar-positive' : 'bar-stable' }}">
<ion-nav-back-button>
</ion-nav-back-button>
</ion-nav-bar>
以上 Github 问题现已关闭。
Ionic 团队成员 Mike 的 codepen 工作为我们提供了一个合适的解决方案,尽管它不 似乎不错 解决方法。
这是他的片段摘录:
// We need to be able to add a class the cached nav-bar
// Which provides the background color
var cachedNavBar = document.querySelector('.nav-bar-block[nav-bar="cached"]');
var cachedHeaderBar = cachedNavBar.querySelector('.bar-header');
// And also the active nav-bar
// which provides the right class for the title
var activeNavBar = document.querySelector('.nav-bar-block[nav-bar="active"]');
var activeHeaderBar = activeNavBar.querySelector('.bar-header');
var barClass = attrs.navBarClass;
var ogColors = [];
var colors = ['positive', 'stable', 'light', 'royal', 'dark', 'assertive', 'calm', 'energized'];
var cleanUp = function() {
for (var i = 0; i < colors.length; i++) {
var currentColor = activeHeaderBar.classList.contains('bar-' + colors[i]);
if (currentColor) {
ogColors.push('bar-' + colors[i]);
}
activeHeaderBar.classList.remove('bar-' + colors[i]);
cachedHeaderBar.classList.remove('bar-' + colors[i]);
}
};
https://codepen.io/mhartington/pen/dozjvv
总之,我们应该管理一些DOM操作。
<ion-nav-bar ng-class="{'bar-positive': isAndroid, 'bar-stable': !isAndroid}">
</ion-nav-bar>
<ion-tabs ng-class="{'tabs-positive': isAndroid, 'tabs-icon-top': true}">
<!-- Account Tab -->
<ion-tab title="Account" icon="ion-ios7-gear" href="#/tab/account">
<ion-nav-view name="tab-account"></ion-nav-view>
</ion-tab>
</ion-tabs>
当我使用以下标记时,只有 ion-tabs 有样式,而 ion-nav-bar 没有。我怎样才能使它们都具有样式,为什么 ion-nav-bar 没有样式?
好的,没关系。 There's an issue for this on github. 另外,我发现了一个有点复杂的解决方法,在他们修复 ion-nav-bar 指令之前应该没问题:
<ion-nav-bar class="{{ isAndroid ? 'bar-positive' : 'bar-stable' }}">
<ion-nav-back-button>
</ion-nav-back-button>
</ion-nav-bar>
以上 Github 问题现已关闭。
Ionic 团队成员 Mike 的 codepen 工作为我们提供了一个合适的解决方案,尽管它不 似乎不错 解决方法。
这是他的片段摘录:
// We need to be able to add a class the cached nav-bar
// Which provides the background color
var cachedNavBar = document.querySelector('.nav-bar-block[nav-bar="cached"]');
var cachedHeaderBar = cachedNavBar.querySelector('.bar-header');
// And also the active nav-bar
// which provides the right class for the title
var activeNavBar = document.querySelector('.nav-bar-block[nav-bar="active"]');
var activeHeaderBar = activeNavBar.querySelector('.bar-header');
var barClass = attrs.navBarClass;
var ogColors = [];
var colors = ['positive', 'stable', 'light', 'royal', 'dark', 'assertive', 'calm', 'energized'];
var cleanUp = function() {
for (var i = 0; i < colors.length; i++) {
var currentColor = activeHeaderBar.classList.contains('bar-' + colors[i]);
if (currentColor) {
ogColors.push('bar-' + colors[i]);
}
activeHeaderBar.classList.remove('bar-' + colors[i]);
cachedHeaderBar.classList.remove('bar-' + colors[i]);
}
};
https://codepen.io/mhartington/pen/dozjvv
总之,我们应该管理一些DOM操作。