Nativescript 2.2 异常
Nativescript 2.2 exception
在 2.2 中出现以下异常。
正在使用以前的版本。
做了 "tns info" 并且全部更新到 2.2
JS: Error: Uncaught (in promise): EXCEPTION: Error in pages/listview/listview.html:12:2
JS: ORIGINAL EXCEPTION: TypeError: _this.cssClasses(...).set is not a function
JS: ORIGINAL STACKTRACE:
JS: TypeError: _this.cssClasses(...).set is not a function
JS: at /data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:254:78
JS: at Array.forEach (native)
JS: at ViewUtil.setClasses (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:254:17)
JS: at ViewUtil.setPropertyInternal (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:189:18)
JS: at ViewUtil.setProperty (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:181:18)
JS: at NativeScriptRenderer.setElementProperty (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/renderer.js:141:23)
JS: at NativeScriptRenderer.setElementAttribute (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/renderer.js:145:21)
JS: at DebugAppView._View_ListviewPage0.createInternal (ListviewPage.template.js:58:17)
JS: at DebugAppView.AppView.create (/data/data/org.nativescript.test1/files/app/tns_modules/@angular/core/src/linker/view.js:87:21)
JS: at DebugAppView.create (/data/data/org.nativescript.test1/files/app/tns_modules/@angular/core/src/linker/view.js:299:44)
JS: ERROR CONTEXT:
JS: [object Object]
同时升级 tns-core-modules@2.2.0 和 nativescript-angular@0.3.0。
经过一些重构后,我们在 tns-core-modules 的 View classes 上引入了 cssClasses Set,但不幸的是 nativescript-angular 通过猴子修补它自己的 cssClasses 数组 属性 在视图 class 上。已解决,但新版本的tns-core-modules将无法兼容旧版本的nativescript-angular.
我用最新的 tns-core-modules 和 nativescript-angular 测试了这个场景,一切都按预期工作。正如@Panayot.Cankov 建议您应该升级到 tns-core-modules@2.2.0
和 nativescript-angular@0.3.0
。您可以使用以下命令执行此操作:
tns plugin remove tns-core-modules
tns plugin add tns-core-modules@2.2.0
tns plugin remove nativescript-angular
tns plugin add nativescript-angular@0.3.0
确保你也升级你的 angular 依赖项,在我遇到 rc4 之前我收到了同样的错误。以下依赖项现在对我有用。
"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/http": "2.0.0-rc.4",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"@angular/platform-server": "2.0.0-rc.4",
"@angular/router-deprecated": "2.0.0-rc.2",
"nativescript-angular": "^0.3.0",
"nativescript-drop-down": "^1.3.2",
"rxjs": "5.0.0-beta.6",
"tns-core-modules": "^2.2.1",
"zone.js": "^0.6.12"
在 2.2 中出现以下异常。
正在使用以前的版本。
做了 "tns info" 并且全部更新到 2.2
JS: Error: Uncaught (in promise): EXCEPTION: Error in pages/listview/listview.html:12:2
JS: ORIGINAL EXCEPTION: TypeError: _this.cssClasses(...).set is not a function
JS: ORIGINAL STACKTRACE:
JS: TypeError: _this.cssClasses(...).set is not a function
JS: at /data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:254:78
JS: at Array.forEach (native)
JS: at ViewUtil.setClasses (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:254:17)
JS: at ViewUtil.setPropertyInternal (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:189:18)
JS: at ViewUtil.setProperty (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/view-util.js:181:18)
JS: at NativeScriptRenderer.setElementProperty (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/renderer.js:141:23)
JS: at NativeScriptRenderer.setElementAttribute (/data/data/org.nativescript.test1/files/app/tns_modules/nativescript-angular/renderer.js:145:21)
JS: at DebugAppView._View_ListviewPage0.createInternal (ListviewPage.template.js:58:17)
JS: at DebugAppView.AppView.create (/data/data/org.nativescript.test1/files/app/tns_modules/@angular/core/src/linker/view.js:87:21)
JS: at DebugAppView.create (/data/data/org.nativescript.test1/files/app/tns_modules/@angular/core/src/linker/view.js:299:44)
JS: ERROR CONTEXT:
JS: [object Object]
同时升级 tns-core-modules@2.2.0 和 nativescript-angular@0.3.0。 经过一些重构后,我们在 tns-core-modules 的 View classes 上引入了 cssClasses Set,但不幸的是 nativescript-angular 通过猴子修补它自己的 cssClasses 数组 属性 在视图 class 上。已解决,但新版本的tns-core-modules将无法兼容旧版本的nativescript-angular.
我用最新的 tns-core-modules 和 nativescript-angular 测试了这个场景,一切都按预期工作。正如@Panayot.Cankov 建议您应该升级到 tns-core-modules@2.2.0
和 nativescript-angular@0.3.0
。您可以使用以下命令执行此操作:
tns plugin remove tns-core-modules
tns plugin add tns-core-modules@2.2.0
tns plugin remove nativescript-angular
tns plugin add nativescript-angular@0.3.0
确保你也升级你的 angular 依赖项,在我遇到 rc4 之前我收到了同样的错误。以下依赖项现在对我有用。
"@angular/common": "2.0.0-rc.4",
"@angular/compiler": "2.0.0-rc.4",
"@angular/core": "2.0.0-rc.4",
"@angular/http": "2.0.0-rc.4",
"@angular/platform-browser": "2.0.0-rc.4",
"@angular/platform-browser-dynamic": "2.0.0-rc.4",
"@angular/platform-server": "2.0.0-rc.4",
"@angular/router-deprecated": "2.0.0-rc.2",
"nativescript-angular": "^0.3.0",
"nativescript-drop-down": "^1.3.2",
"rxjs": "5.0.0-beta.6",
"tns-core-modules": "^2.2.1",
"zone.js": "^0.6.12"