Comment étendre par défaut webpack config Ionique v2
Je voudrais étendre la valeur par défaut webpack config de l'ionique. Plus précisément, je voudrais ajouter un alias pour la résolution des modules afin que je puisse importer des modules par leur chemin d'accès absolu, plutôt que par un relatif:
Au lieu de l'importation des modules comme ceci:
import { SomeComponent } from '../../components/some.component.ts';
Je veux
import { SomeComponent } from '@app/components/some.component.ts';
où @app
est un alias de la racine du répertoire source.
Dans d'autres projets, j'ai pu le faire en ajoutant quelque chose comme cela pour le webpack config:
module.exports = {
...
resolve: {
extensions: ['.ts', '.js'],
alias: {
'@app': path.resolve('./'),
}
},
...
};
Je ne suis pas sûr de savoir comment le faire avec Ionique sans écraser la valeur par défaut webpack config.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez copier l'existant webpack.config.js fichier, le modifier et le configurer pour l'utiliser à la place de la première.
Voici les étapes
Sur le dossier racine de votre projet de créer dossier config et copier le fichier
webpack.config.js
, il (ce fichier est situé dans..\node_modules\@ionic\app-scripts\config
Modifier le fichier copié, comme l'exige
Dans le fichier
package.json
de votre projet d'ajouter:"config": {
"ionic_bundler": "webpack",
"ionic_webpack": "./config/webpack.config.js"
}
La accepté de répondre fonctionne très bien, mais vous devrez mettre à jour
webpack.config.js
chaque fois que vous mettez à jourapp-script
. Donc, au lieu de copier le code,require
danswebpack.config.js
package.json
webpack.config.js
Dans la plupart des cas, vous pouvez suivre cette approche et vous n'aurez pas à mettre à jour
config
chaque fois que vous mettez à jourapp-script
Au cas ou quelqu'un ayant des difficultés à comprendre exacte des changements pour obtenir ce travail.
Ionique dans les 3 (version 3.14.0), afin d'obtenir alias cartographie de travail, vous devez définir le chemin de la cartographie à la fois dans
webpack.config.js
&tsconfig.json
Personnalisées webpack de config, configurer votre
package.json
pour charger votre personnaliséwebpack.config.js
.De fusion de l'alias par défaut webpack config
...
De fusion de l'alias par défaut webpack config
...
Définir
baseUrl
&paths
danstsconfig.json
comme suit:cli paquets:
mondial des paquets:
local des paquets:
./test-config/webpack.test.js
) doit être mis à jour.Hi Maverick09 réponse est génial, mais il ne fonctionne pas pour moi, je suis en utilisant cette configuration:
cli paquets:
local des paquets:
Système:
par défaut configuraion a deux pièces de dev et de prod donc, si vous changez de configuration personnalisé comme cela semble tout de travail
Dans les versions récentes de ionique, alias n'est pas de travail, sauf si vous utilisez ce correctif (laissez tapuscrit chargeur de connaître l'alias):
tsconfig.json
de crédit: https://github.com/ionic-team/ionic-app-scripts/pull/683#issuecomment-294078919
Mon ionique info:
mondial des paquets:
local des paquets:
Système: