0

无论我调用quasar dev -m cordova -t ios -T browser(最后在子目录中调用 Cordova)还是尝试一个 npm 脚本,例如:

"scripts": {
    "build": "quasar build -m cordova -t ios -T browser",
    "postbuild": "cd src-cordova && cordova run browser"
}

我收到以下错误。(cd src-cordova && cordova run browser如果您在 Git Bash 中执行此操作,但不是从 npm 脚本中执行此操作,则有效。)

(node:9964) UnhandledPromiseRejectionWarning: CordovaError: No platforms added to
this project. Please use `cordova platform add <platform>`.
    at Object.preProcessOptions (C:\....\cordova-lib\src\cordova\util.js:312:15)
    at C:\....\cordova-lib\src\cordova\run.js:30:32
    at _fulfilled (C:\....\cordova-lib\node_modules\q\q.js:787:54)
    at self.promiseDispatch.done (C:\....\cordova-lib\node_modules\q\q.js:816:30)
    at Promise.promise.promiseDispatch (C:\....\cordova-lib\node_modules\q\q.js:749:13)
    at C:\....\cordova-lib\node_modules\q\q.js:810:14
    at flush (C:\....\cordova-lib\node_modules\q\q.js:108:17)
    at _combinedTickCallback (internal/process/next_tick.js:131:7)
    at process._tickCallback (internal/process/next_tick.js:180:9)
    at Function.Module.runMain (module.js:695:11)
(node:9964) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error
originated either by throwing inside of an async function without a catch block, or by
rejecting a promise which was not handled with .catch(). (rejection id: 1)

我在网上找不到任何关于这个的东西,而且它似乎是最近的,虽然我不知道我当时改变了什么。从那时起,我确保我完全重新安装了 Node 并更新了 npm、Cordova、Quasar、Vue、git!,一切。还是这个错误。

而且它似乎不是 Quasar 本身。如果我从 Quasar 上方的目录中执行此类操作,则它可以工作,但 Cordova 失败:

"scripts": {
    "build": "cd quasar-folder && quasar build -m cordova -t ios -T browser"
}

quasar info网:

Operating System                Windows_NT(10.0.17134) - win32/x64
NodeJs                          8.11.4

Global packages
  NPM                           6.4.0
  yarn                          Not installed
  quasar-cli                    0.17.13
  vue-cli                       3.0.1
  cordova                       8.0.0

Important local packages
  quasar-cli                    0.17.13 
  quasar-framework              0.17.10 
  quasar-extras                 2.0.6   
  vue                           2.5.17  
  vue-router                    3.0.1   
  vuex                          3.0.1   
  electron                      Not installed
  electron-packager             Not installed
  electron-builder              Not installed
  @babel/core                   7.0.0-beta.54   
  webpack                       4.16.5  
  webpack-dev-server            3.1.5   
  workbox-webpack-plugin        3.4.1   
  register-service-worker       1.4.1   

那么是什么原因造成的呢?有解决方法或修复方法吗?

4

1 回答 1

0

为什么,我不确定。但这对我有用,即使一切都已安装,从 Quasar 项目根目录:

  1. 删除 Cordova 文件夹
    $ rm -rf src-cordova
  2. 重新安装 mode/Cordova,在尝试运行它时它甚至应该可以工作。
    $ quasar dev -m cordova -t ios -T browser
  3. 之后,Quasar 看到平台(例如,browser上面)已安装,但 Cordova 没有,因此它一直尝试下载它以供开发,构建失败。所以,简单地说:
    $ cd src-cordova && cordova add platform browser

我想这可能是由于在我的系统周围移动了 Quasar 安装,或者升级出了问题。无论如何,它坏了,Vue.nextTick但仍然会建造等等。任何在这里有更确切想法的人都会得到我的投票和/或复选标记。

于 2018-08-29T04:27:44.437 回答