alibaba / ice

🚀 ice.js: The Progressive App Framework Based On React(基于 React 的渐进式应用框架)
https://ice.work
MIT License
17.96k stars 2.1k forks source link

modeConfig 不支持 vite, entry, mpa 选项根据不同环境切换 #5174

Closed guoyunhe closed 2 years ago

guoyunhe commented 2 years ago

What is the current behavior? 发生了什么?

在实际项目中,有不少还需要支持 IE 或者 Chrome 49 (支持 Windows XP 的最后一个版本),而 Vite 模式并不支持(用 legacy 插件性能会变慢,不利于本地开发)。

尝试用环境配置 https://ice.alibaba-inc.com/docs/guide/basic/config 但是 vite: true 选项似乎不支持。

{
  "disableRuntime": true,
  "alias": { "@alife/next": "@alifd/next", "~@alife/next": "@alifd/next" },
  "minify": "esbuild",
  "eslint": false,
  "browserslist": {
    "chrome": 49,
    "ie": 11
  },
  "modeConfig": {
    "start": {
      "mpa": true,
      "vite": {
        "css": { "preprocessorOptions": { "scss": { "charset": false } } }
      }
    },
    "build": {
      "entry": {
        "pages/delivery/index": "src/pages/delivery/index.jsx",
        "pages/delivery-center/index": "src/pages/delivery-center/index.jsx"
      },
      "outputAssetsPath": {
        "js": "./",
        "css": "./"
      },
      "plugins": ["./build-plugin.js"]
    }
  }
}

另外好像 entry 和 mpa 选项也不支持 modeConfig 配置。

What is the expected behavior? 期望的结果是什么?

希望能够支持配置本地开发 start 时用 vite 模式,发布构建 build 时用 webpack 模式。

Any additional comments? 相关环境信息?

guoyunhe commented 2 years ago

已解决,需要手动加上 --mode start 或者 --mode build,文档的表述有问题。