Экран Ionic White на проекте, который содержит только шаблон бокового меню - PullRequest
0 голосов
/ 12 октября 2018

Ионная информация Ионная:

ionic (Ionic CLI)             : 4.2.1 (/usr/local/lib/node_modules/ionic)
Ionic Framework               : @ionic/angular 4.0.0-beta.12
@angular-devkit/build-angular : 0.7.5
@angular-devkit/schematics    : 0.7.5
@angular/cli                  : 6.2.4
@ionic/angular-toolkit        : 1.0.0

Кордова:

cordova (Cordova CLI) : 8.1.2 (cordova-lib@8.1.1)
   Cordova Platforms     : android 7.1.1, browser 5.0.4
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 2.2.0, (and 4 other plugins)

Система:

Android SDK Tools : 26.1.1 (/Users/we/Library//Android/sdk)
   NodeJS            : v8.11.4 (/usr/local/bin/node)
   npm               : 6.4.1
   OS                : macOS High Sierra
   Xcode             : Xcode 8.0 Build version 8A218a

Я создал новый проект с помощью следующей команды:

ionic start sandbox2 sidemenu --type=angular

затем я попытался развернуть его на устройстве Android с помощью этой команды:

ionic cordova emulate android --target="nexus"

целью был Эмулятор с Android 7 (API 24). Я не изменил ни одно изкод, но я увидел только белый экран.

Вывод на консоль:

    The key "viewport-fit" is not recognized and ignored.
vendor.js:34241Angular is running in the development mode. Call enableProdMode() to enable the production mode.
    vendor.js:32793ERROR Error: Uncaught (in promise): TypeError: Object.values is not a function(…)defaultErrorLogger @ vendor.js:32793
    vendor.js:32793ERROR Error: Uncaught (in promise): TypeError: containerEl.commit is not a function(…)defaultErrorLogger @ vendor.js:32793
    vendor.js:64239Ionic Native: deviceready event fired after 995 ms

Из-за белого экрана я ожидал, что DOM покажет пустой тег корня приложения, но я обнаружил, чтоэто:

<body>
    <app-root ng-version="6.1.9">
        <ion-app>
            <ion-split-pane>
                <ion-menu>
                    <ion-header>
                        <ion-toolbar>
                            <ion-title>Menu</ion-title>
                        </ion-toolbar>
                    </ion-header>
                    <ion-content>
                        <ion-list>
                            <!--bindings={
  "ng-reflect-ng-for-of": "[object Object],[object Object"
}-->
                            <ion-menu-toggle auto-hide="false">
                                <ion-item tabindex="0" ng-reflect-router-direction="root" ng-reflect-router-link="/home">
                                    <ion-icon slot="start" ng-reflect-name="home"></ion-icon>
                                    <ion-label> Home </ion-label>
                                </ion-item>
                            </ion-menu-toggle>
                            <ion-menu-toggle auto-hide="false">
                                <ion-item tabindex="0" ng-reflect-router-direction="root" ng-reflect-router-link="/list">
                                    <ion-icon slot="start" ng-reflect-name="list"></ion-icon>
                                    <ion-label> List </ion-label>
                                </ion-item>
                            </ion-menu-toggle>
                        </ion-list>
                    </ion-content>
                </ion-menu>
                <ion-router-outlet main="">
                    <app-home _nghost-c0="" class="ion-page ion-page-invisible">
                        <ion-header _ngcontent-c0="">
                            <ion-toolbar _ngcontent-c0="">
                                <ion-buttons _ngcontent-c0="" slot="start">
                                    <ion-menu-button _ngcontent-c0=""></ion-menu-button>
                                </ion-buttons>
                                <ion-title _ngcontent-c0=""> Home </ion-title>
                            </ion-toolbar>
                        </ion-header>
                        <ion-content _ngcontent-c0="" padding=""> The world is your oyster.
                            <p _ngcontent-c0="">If you get lost, the <a _ngcontent-c0="" href="https://ionicframework.com/docs" rel="noopener" target="_blank">docs</a> will be your guide.</p>
                        </ion-content>
                    </app-home>
                </ion-router-outlet>
            </ion-split-pane>
        </ion-app>
    </app-root>
    <script type="text/javascript" src="runtime.js"></script>
    <script type="text/javascript" src="polyfills.js"></script>
    <script type="text/javascript" src="styles.js"></script>
    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="vendor.js"></script>
    <script type="text/javascript" src="main.js"></script>

</body>

Я не знаю, почему отсутствуют стили, чтобы показать шаблон бокового меню, который я добавил в этот проект.

Когда я пытался развернуть проект в браузере, онработал отлично.Я использовал эту команду для этого:

ionic cordova run browser

Я уже пытался безуспешно изменить <base href="/" /> на <base href="." />.

Следующее, что я сделал, было удаление ионной страницы.-видимый стиль на домашней странице:

export class HomePage implements OnInit {

  constructor(
    private renderer: Renderer2,
    private el: ElementRef
  ) {
  }

  ngOnInit() {

   this.renderer.removeClass(this.el.nativeElement, 'ion-page-invisible');
  }
}

Я проверил это на своем устройстве Android и стиль был удален .... но я все еще ничего не вижу.

ОБНОВЛЕНИЕ

Я сейчас протестировал его на Android и эмуляторе IOS, не работал, но затем я попробовал свое физическое устройство и запустил его, это проблема с уровнем API.

Работает: API 26 Oreo (Android 8.0) -> Пробовал его в эмуляторе после физического устройства, оба работали Mac натив Браузер

Не работает: Android API 25 и ниже Iphone Simulator с IOS 10 -> не работает

Не удалось запустить из-за других ошибок: Android API более 26 из-за «PANIC: отсутствует программа движка эмулятора для процессора x86»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...