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

无法缩小ionic项目

  •  7
  • alfredopacino  · 技术社区  · 8 年前

    我试过了 cordova-uglify ( link )要缩小Ionic1项目,请在运行

    ionic cordova build --release
    

    我在中看到了我的js源代码 www 文件夹(共个) app-release-unsigned.apk 。。根本没有缩小。

    ionic info 打印:

    [WARN] Error with .\www\lib\ionic\version.json file: FILE_NOT_FOUND, trying
           .\bower.json.
    
    cli packages: (C:\Program Files\nodejs\node_modules)
    
        @ionic/cli-utils  : 1.19.1
        ionic (Ionic CLI) : 3.19.1
    
    global packages:
    
        cordova (Cordova CLI) : 8.0.0
        Gulp CLI              : not installed globally
    
    local packages:
    
        Cordova Platforms : android 7.0.0 ios 4.5.4
        Ionic Framework   : ionic1 1.3.4
    
    System:
    
        Android SDK Tools : 26.0.1
        Node              : v8.9.4
        npm               : 5.6.0
        OS                : Windows 7
    

    编辑:我跑步时注意到 ionic cordova build --release 我发现这些错误:

    An error ocurred while reading directories:
     Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\js'
    An error ocurred while reading directories:
     Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\css'
    An error ocurred while reading directories:
     Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\img'
    Running command: "C:\Program Files\nodejs\node.exe" C:\nodejs\myproject\hooks\after_prepare\uglify.js C:\nodejs\myproject
    
    processFiles err: Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\js'
    processFiles err: Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\css'
    processFiles err: Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\img'
    processFiles err: Error: ENOENT: no such file or directory, scandir 'C:\nodejs\myproject\platforms\android\assets\www\build'
    

    我没有 .\platforms\android\assets\www 文件夹

    @Antonis这些是我尝试的步骤:

    • 我删除了node\u模块并重新安装 npm install
    • 我试过了 npm rebuild node-sass --force
    • 删除并重新添加android平台 ionic cordova构建-发布
    • 仍然获取错误 ENOENT: no such file or directory, scandir C:\nodejs\myproject\platforms\android\assets\www\js [...]

    我如何生成 assets 文件夹 我看到有一个 资产 文件夹位于 .\platforms\android\app\src\main\assets 但是模块 离子缩小 寻找 .\platforms\android\assets

    3 回复  |  直到 8 年前
        1
  •  3
  •   alfredopacino    8 年前

    我注意到我有一个资产文件夹 platforms\android\app\src\main\assets 所以我编辑了 .\hooks\after_prepare\uglify.js 和 .\hooks\after_prepare\010_add_platform_class.js 以匹配该路径。看起来现在可以了。

        2
  •  0
  •   sirius2013    8 年前

    请为您的爱奥尼亚项目尝试此缩小节点模块。

    https://github.com/Jiansen/ionic-minify
    
        3
  •  0
  •   Sensei James    8 年前

    您只需要修改 hooks/uglify-config.json 。默认情况下,有一个条目显示:

    "foldersToProcess": [
        "platforms/browser/www"
    ],
    

    将其更改为空字符串:

    "foldersToProcess": [
        ""
    ],