Nativescript iOS 6.4.2 Сетка-макет выдает ошибку: undefined не является объектом (оценивая 'this.rows [measureSpe c .getRowIndex ()]. ​​Children') - PullRequest
0 голосов
/ 20 марта 2020

При использовании Nativescript- angular мы получаем следующую ошибку:

File: node_modules/@nativescript/core/ui/layouts/grid-layout/grid-layout.ios.js:351:0: JS ERROR TypeError: undefined is not an object (evaluating 'this.rows[measureSpec.getRowIndex()].children')

Это только на iOS 6.4.x и 6.5.x, на Android нет проблем. Клиент взрывается со следующим стеком:

JavaScript stack trace:
file: node_modules/@nativescript/core/ui/layouts/grid-layout/grid-layout.ios.js:351:0
at file: node_modules/@nativescript/core/ui/layouts/grid-layout/grid-layout.ios.js:113:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:136:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:923:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:134:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:125:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:133:0
at file: node_modules/@nativescript/core/ui/layouts/grid-layout/grid-layout.ios.js:107:0
at file: node_modules/@nativescript/core/ui/core/view/view.ios.js:58:0
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper-common.js:26:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:893:0
at file: node_modules/@nativescript/core/ui/content-view/content-view.js:74:0
at file: node_modules/@nativescript/core/ui/core/view/view.ios.js:58:0
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper-common.js:26:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:893:0
at file: node_modules/@nativescript/core/ui/layouts/stack-layout/stack-layout.ios.js:52:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:136:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:923:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:134:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:125:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:133:0
at file: node_modules/@nativescript/core/ui/layouts/stack-layout/stack-layout.ios.js:50:0
at file: node_modules/@nativescript/core/ui/core/view/view.ios.js:58:0
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper-common.js:26:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:893:0
at file: node_modules/@nativescript/core/ui/layouts/stack-layout/stack-layout.ios.js:52:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:136:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:923:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:134:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:125:0
at file: node_modules/@nativescript/core/ui/layouts/layout-base-common.js:133:0
at file: node_modules/@nativescript/core/ui/layouts/stack-layout/stack-layout.ios.js:50:0
at file: node_modules/@nativescript/core/ui/core/view/view.ios.js:58:0
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper-common.js:26:0
at file: node_modules/@nativescript/core/ui/core/view/view-common.js:893:0
at file: node_modules/nativescript-ui-sidedrawer/ui-sidedrawer.ios.js:270:0
at file: node_modules/@nativescript/core/ui/core/view/view.ios.js:58:0
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper-common.js:26:0
at layoutView(file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper.ios.js:64:0)
at file: node_modules/@nativescript/core/ui/core/view/view-helper/view-helper.ios.js:217:0
at UIApplicationMain([native code])
at run(file: node_modules/@nativescript/core/application/application.ios.js:312:0)
at file: node_modules/@nativescript/angular/platform-common.js:210:0
at file: node_modules/@nativescript/angular/platform-common.js:111:0
at file: node_modules/@nativescript/angular/platform-common.js:91:0
at file:///app/bundle.js:9245:144
at ./main.tns.ts(file:///app/bundle.js:9250:34)

Кто-нибудь видел что-то подобное? Есть ли способ решить проблему? не маскируйте это с помощью: "discardUncaughtJsExceptions": true

Любые предложения или идеи приветствуются.

1 Ответ

0 голосов
/ 21 марта 2020

Мы отследили причину неисправности до <Image> в сетке, в которой значение строки было установлено на undefined .

<GridLayout>
   <Image [row]="undefined" ....></Image>
</GridLayout>

Хотя это была ошибка в нашем коде, интересно то, что на Android это не вызывает проблем и интерпретируется как row = "0", а на iOS это вызывает исключение.

Было бы хорошо, если бы поведение было одинаковым на обеих платформах.

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