IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Webpack Encore utilisation des alias [4.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut Webpack Encore utilisation des alias
    Bonjour,

    Dans des fichiers css, je cherche à utiliser un alias dans les fonctions url() pour indiquer le répertoire de certaines images qui se trouvent dans mon_projet/public/images.
    Donc, dans webpack.conf.js, j'ai créé un alias @images comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ...
    var path = require('path');
    ...
    Encore
    ...
        .addAliases({'@images': path.resolve(__dirname, 'public/images')})
    ...
    ;
    module.exports = Encore.getWebpackConfig();
    Dans mon css, je cherche à accéder à une image de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      background-image: url('~@images/sprite.svg');
    Or, de cette manière, l'image n'est pas affichée. Lorsque j'inspecte le css généré, j'ai ceci :

    background-image: url(/build/images/sprite.56e5c9c8.svg);
    Lorsque j'ouvre le fichier sprite.56e5c9c8.svg généré dans /build/images/, j'ai ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    module.exports = __webpack_public_path__ + "_/public/images/sprite.e9a8abfa.svg";
    Quelqu'un aurait une idée sur l'origine du fait que mon image ne s'affiche pas?

    Merci d'avance pour votre aide.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 162
    Par défaut
    Salut,

    Il y a ce lien sur Webpack Encore qui peut peut être t'aider:

    https://stackoverflow.com/questions/...e-in-symfony-4

    @+

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Merci beaucoup pour ton intérêt. Cependant, je ne vois pas d'exemple d'utilisation d'alias dans le lien que tu as fourni...

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Quand je fais exactement ce que tu décris, j'ai l'image dans mon dossier build/images.

    Apparement, c'est un bug qui survient, mais uniquement quant tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    import css from '../css/styles.scss';
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require('../css/styles.scss');
    Vois si ça peut t'aider.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Merci beaucoup pour ton aide. Cependant, je ne parviens toujours pas à travailler avec les alias.

    Suivant tes conseils, dans mon fichier app.js, j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    require('../css/app.scss');
    Ensuite, dans webpack.config.js, j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ...
    var path = require('path');
    ...
        .setOutputPath('public/build/')
        .setPublicPath('/build')
    ...
        .addAliases({'@images': path.resolve(__dirname, '../images')})
    Pour finir, dans mon fichier icons.scss, j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    .icon{
      background-image: url('~@images/sprite.svg');
    ...
    Lors de la compilation de webpack, j'ai cette erreur :

    Module build failed (from ./node_modules/mini-css-extract-plugin/dist/loader.js):
    ModuleNotFoundError: Module not found: Error: Can't resolve '@images/sprite.svg' in 'C:\cmder\roadtrip\assets\css'

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Utilise public/images dans l'alias:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .addAliases({'@images': path.resolve(__dirname, 'public/images')})

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation des alias dans la clause WHERE d'une requête SELECT
    Par OursRêveur dans le forum MS SQL Server
    Réponses: 14
    Dernier message: 13/07/2013, 04h34
  2. [MySQL] Utilisation des alias dans une requête
    Par methodman225 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 29/09/2008, 12h55
  3. Utiliser des ALIAS de colonnes dans une jointure
    Par mbzhackers dans le forum SQL
    Réponses: 4
    Dernier message: 31/03/2008, 10h27
  4. bonne utilisation des alias
    Par gok6tm dans le forum Requêtes
    Réponses: 0
    Dernier message: 15/11/2007, 11h48
  5. [Oracle] utilisation des alias dans le where
    Par seddik_saber dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/09/2007, 11h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo