mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-19 19:57:22 +08:00
fix(menu): default menu mode
This commit is contained in:
@ -52,7 +52,7 @@ export class Menu {
|
|||||||
* see the `menuType` in the [config](../../config/Config). Available options:
|
* see the `menuType` in the [config](../../config/Config). Available options:
|
||||||
* `"overlay"`, `"reveal"`, `"push"`.
|
* `"overlay"`, `"reveal"`, `"push"`.
|
||||||
*/
|
*/
|
||||||
@Prop({ mutable: true }) type = 'overlay';
|
@Prop({ mutable: true }) type: string;
|
||||||
|
|
||||||
@Watch('type')
|
@Watch('type')
|
||||||
typeChanged(type: string, oldType: string | null) {
|
typeChanged(type: string, oldType: string | null) {
|
||||||
@ -122,6 +122,9 @@ export class Menu {
|
|||||||
|
|
||||||
async componentWillLoad() {
|
async componentWillLoad() {
|
||||||
this.menuCtrl = await this.lazyMenuCtrl.componentOnReady();
|
this.menuCtrl = await this.lazyMenuCtrl.componentOnReady();
|
||||||
|
if (this.type == null) {
|
||||||
|
this.type = this.mode === 'ios' ? 'reveal' : 'overlay';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
componentDidLoad() {
|
componentDidLoad() {
|
||||||
@ -232,7 +235,7 @@ export class Menu {
|
|||||||
// Menu swipe animation takes the menu's inner width as parameter,
|
// Menu swipe animation takes the menu's inner width as parameter,
|
||||||
// If `offsetWidth` changes, we need to create a new animation.
|
// If `offsetWidth` changes, we need to create a new animation.
|
||||||
const width = this.menuInnerEl.offsetWidth;
|
const width = this.menuInnerEl.offsetWidth;
|
||||||
if (width === this.width && this.animation !== null) {
|
if (width === this.width && this.animation !== undefined) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.width = width;
|
this.width = width;
|
||||||
@ -240,7 +243,7 @@ export class Menu {
|
|||||||
// Destroy existing animation
|
// Destroy existing animation
|
||||||
if (this.animation) {
|
if (this.animation) {
|
||||||
this.animation.destroy();
|
this.animation.destroy();
|
||||||
this.animation = null;
|
this.animation = undefined;
|
||||||
}
|
}
|
||||||
// Create new animation
|
// Create new animation
|
||||||
this.animation = await this.menuCtrl.createAnimation(this.type, this);
|
this.animation = await this.menuCtrl.createAnimation(this.type, this);
|
||||||
|
Reference in New Issue
Block a user