代码之家  ›  专栏  ›  技术社区  ›  Simon

无法读取未定义的“find”属性(UnhandlePromiseRejectionWarning)

  •  2
  • Simon  · 技术社区  · 6 年前

    我正在使用Angular/FireBase在爱奥尼亚构建一个应用程序。

    我想在我的Android设备上测试这个应用程序,它以前运行得很好。但是,最近由于出现错误,我无法运行它。

    $ ionic cordova run android --device --prod
    

    从而导致错误:

    Running app-scripts build: --prod --platform android --target cordova
    [15:36:05]  build prod started ...
    [15:36:05]  clean started ...
    [15:36:05]  clean finished in 6 ms
    [15:36:05]  copy started ...
    [15:36:06]  deeplinks started ...
    [15:36:06]  deeplinks finished in 270 ms
    [15:36:06]  ngc started ...
    [15:36:19]  ngc finished in 12.61 s
    [15:36:19]  preprocess started ...
    [15:36:19]  preprocess finished in 1 ms
    [15:36:19]  webpack started ...
    [15:36:19]  copy finished in 13.84 s
    [15:37:27]  webpack finished in 68.39 s
    [15:37:27]  uglify started ...
    [15:37:27]  sass started ...
    Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning.
    [15:37:29]  sass finished in 1.66 s
    [15:37:29]  cleancss started ...
    [15:37:31]  cleancss finished in 2.77 s
    [15:37:56]  uglify finished in 28.99 s
    [15:37:56]  postprocess started ...
    [15:37:56]  postprocess finished in 25 ms
    [15:37:56]  lint started ...
    [15:37:56]  build prod finished in 110.64 s
    > cordova run android --device
    Android Studio project detected
    
    (node:64964) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'find' of undefined
        at Object.resolveParent (C:\Users\Simon K\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-common\src\util\xml-helpers.js:207:26)
        at C:\Users\Simon K\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-common\src\ConfigChanges\ConfigChanges.js:345:53
        at Array.forEach (<anonymous>)
        at is_conflicting (C:\Users\Simon K\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-common\src\ConfigChanges\ConfigChanges.js:337:17)
        at PlatformMunger.add_config_changes (C:\Users\Simon K\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-common\src\ConfigChanges\ConfigChanges.js:188:33)
        at C:\Users\Simon K\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\prepare.js:130:32
        at _fulfilled (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:854:54)
        at self.promiseDispatch.done (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:883:30)
        at Promise.promise.promiseDispatch (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:816:13)
        at C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:624:44
    (node:64964) 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:64964) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
    

    我不知道为什么会这样。我试着把我的 node_modules 文件夹,然后执行 npm install 但这并没有解决问题。我认为这可能是Android的问题?因为我仍然可以在 iOS

    有什么想法吗?谢谢您!!

    1 回复  |  直到 6 年前
        1
  •  9
  •   Simon    6 年前

    设法(暂时?)通过删除来解决此问题 android 重新安装…

    cordova platform remove android
    cordova platform add android
    

    希望这能对以后的人有所帮助。