NativeScript / NativeScript/nativescript-cli
NS/Angular app not working with latest CLI
还没有人认领这个 Issue。
- 主要语言
- JavaScript
- 星标
- 1.1k
- 派生
- 204
- 平均合并
- 1 天 9 小时
- 30 天内合并 PR
- 8
描述
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- CLI: 5.4.2
- Cross-platform modules: Core modules? if so, 5.4.3
- Android Runtime: 5.4.0
- iOS Runtime: N/A
- Plugin(s):
"nativescript-angular": "5.0.0",
"nativescript-bluetooth": "^1.2.0",
"nativescript-camera": "^3.2.1",
"nativescript-estimote-plugin": "file:estimote-nativescript-plugin",
"nativescript-exit": "^1.0.1",
"nativescript-floatingactionbutton": "^4.1.0",
"nativescript-geolocation": "^4.2.3",
"nativescript-imagecropper": "^0.1.2",
"nativescript-imagepicker": "^4.0.0",
"nativescript-in-app-notifications": "^0.1.0",
"nativescript-iqkeyboardmanager": "^1.1.0",
"nativescript-loading-indicator": "^2.3.2",
"nativescript-local-notifications": "file:nativescript-local-notifications",
"nativescript-theme-core": "~1.0.4",
"nativescript-toast": "^1.4.6",
"nativescript-vibrate": "^2.0.1",
Describe the bug
I had been working on a NS/Angular project for a month or so. The code base isn't mine and is a bit old, but I'm doing some updates/bug fixes/etc. I was working just fine, when I noticed issues testing on a new phone. I checked to see if my CLI was out of date, it was, so I updated to 5.4.2.
At that point, things went to heck in a handbasket. The CLI prompted me to update to webpack usage, I said yes, and nothing worked right.
I reverted, tried again, and told it no. I've also run tns update.
Now I get the following output when doing tns build android,
In file C:\projects\prism\wms\RediTrak2.0\app\utils\offline-util.ts line import {isIOS} from "platform" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\utils\tapsound-util.ts line import {isIOS} from "platform" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\utils\tapsound-util.ts line import * as app from "application" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\utils\trackKeyboard-util.ts line import {isIOS} from "platform" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\utils\trackKeyboard-util.ts line import {ios} from "application" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\utils\trackKeyboard-util.ts line import {topmost} from "ui/frame" is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\vendor-platform.android.ts line require("application") is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\vendor-platform.android.ts line require("ui/frame") is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\vendor-platform.android.ts line require("ui/frame/activity") is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\vendor.ts line const application = require("application") is short import. Add tns-core-modules/ in front of the required/imported module.
In file C:\projects\prism\wms\RediTrak2.0\app\vendor.ts line require("ui/styling/style-scope") is short import. Add tns-core-modules/ in front of the required/imported module.
Found peer TypeScript 2.4.2
node_modules/tns-core-modules/ui/frame/frame.d.ts(6,32): error TS6143: Module './frame-common' was resolved to 'C:/projects/prism/wms/RediTrak2.0/node_modules/tns-core-modules/ui/frame/frame-common.js', but '--allowJs' is not set.
node_modules/tns-core-modules/ui/styling/gradient.d.ts(7,25): error TS6143: Module '../../css/parser' was resolved to 'C:/projects/prism/wms/RediTrak2.0/node_modules/tns-core-modules/css/parser.js', but '--allowJs' is not set.
TypeScript compiler failed with exit code 1
To Reproduce
Not sure what to suggest here. As I said, it was an absolutely working project with an earlier version of the CLI.
Expected behavior
For it to build. :)
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,使用列出的 CLI、runtime、plugin 和 TypeScript 版本复现 tns build android。检查 app/utils/offline-util.ts、app/utils/tapsound-util.ts、app/utils/trackKeyboard-util.ts、app/vendor.ts 和 app/vendor-platform.android.ts 中的短 imports,以及报告的 tns-core-modules 错误。现有项目能够成功构建即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, angular, javascript, typescript
- 领域
- build-system, cli, mobile-dev
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100