首页 > 解决方案 > Ionic 3 的“src”的路径别名

问题描述

我有一个 Ionic 3 的自定义 webpack 配置,src用作路径别名(即从 导入src/module/file):

resolve: {
  alias: {
    'src': path.resolve('./src')
  }
}

但是,使用 Ionic app scripts @ 3,当我尝试服务或构建时,我得到一个错误Cannot find module src/module/file

我已经看到了创建路径别名以从src(例如apppages等)下的目录导入的方法,这些方法涉及像我一样更新 Webpack 解析别名以及更新 baseUrl 为tsconfig.json. 例如:

https://medium.com/@siddhartha.ng/ionic-3-import-using-aliases-2aa260d6fab3

src但是,我希望能够从src. 有没有办法通过更改我的 webpack 或 TypeScript 配置来做到这一点?

标签: angulartypescriptionic-frameworkwebpack

解决方案


根据 Ionic 3 的更新,webpack 配置现在有两个顶级属性,dev以及prop对应的 webpack 配置。

这意味着您必须更新devprod属性并从 webpack 配置中导出整个对象。您可以以任何您喜欢的方式执行此操作,例如:

const config = require('@ionic/app-scripts/config/webpack.config.js');

config[process.env.IONIC_ENV].resolve.alias = { src: path.resolve('./src') };

module.exports = config; // you can also export a function that returns this

请记住,您需要使用两种配置导出整个对象。module.exports = config[env]不会工作。


推荐阅读