Où placer la bibliothèque d'interface utilisateur personnalisée

8

J'ai besoin de créer ma propre bibliothèque d'interface utilisateur (principalement des .lessfichiers, mais aussi des images et .js) qui sera utilisée dans plusieurs modules et thèmes personnalisés. Je pensais que je vais juste ajouter mes fichiers à la bibliothèque de l'interface utilisateur Magento qui se trouve sous /lib/web.

  1. Mais tout d'abord, est-il autorisé (et est-ce une bonne pratique) d'ajouter des fichiers personnalisés /lib/web?

  2. Si j'y ajoute des fichiers personnalisés, dois-je y créer mon propre dossier (par exemple avec le nom de ma société) /lib/web/companyafin de garder tous mes fichiers personnalisés séparés des fichiers par défaut de Magento?

Par exemple:

lib/
├── web/
   ├── css/
      ├── source/
   ├── fonts/
   ├── jquery/
   ├── company/
      ├── css/
         ├── source/
      ├── fonts/
      ├── jquery/

Ou dois-je créer un dossier personnalisé dans chacun des dossiers par défaut? Comme ça:

lib/
├── web/
   ├── css/
      ├── source/
      ├── company/
         ├── source/
   ├── fonts/
      ├── company/
   ├── jquery/
      ├── company/

Documentation

J'ai vérifié la documentation sur la bibliothèque d'interface utilisateur, mais je ne sais pas où les fichiers personnalisés doivent être placés: https://github.com/magento/magento2/blob/2.0/lib/web/css/docs/source/README. Maryland

Exemple 1 ( lien ):

Variables globales

Si les variables sont courantes pour les thèmes de couple, elles doivent être situées dans la bibliothèque globale du fichier _variables.less

Je suppose que nous ne devons jamais modifier par défaut les fichiers de base. Donc, cela signifie-t-il que je devrais créer mon propre dossier pour le fichier avec des variables personnalisées? Où exactement?

/lib/web/company/css/source/lib/_variables.less

/lib/web/css/company/source/lib/_variables.less

/lib/web/css/source/company/lib/_variables.less

/lib/web/css/source/lib/company/_variables.less

Exemple 2 ( lien ):

Étend celui utilisé dans plus d'un thème doit être enregistré dans lib lib/source/utilities.less(sera séparé dans le dossier des utilitaires)

Cela suggère que les mixins personnalisés devraient être placés dans un nouveau fichier à l' utilities.lessintérieur d'un nouveau sous-répertoire /lib/web/css/source/lib/source. Est-ce exact?

Mais ils ne disent pas si je dois y créer mon propre dossier.

zitix
la source

Réponses:

2

Ma réponse pourrait être basée sur l'opinion, mais j'applique les meilleures pratiques de développement de module Magento 1 à Magento 2

Comme énoncé dans la réponse liée:

Placez vos ressources statiques (js, css, images) dans un dossier nommé avec le nom de l'entreprise pour faciliter leur isolation

Je ne pense donc pas qu'il y ait une bonne réponse, mais sur la base de ce que je viens de publier, je dirais que j'opterais pour votre première option:

Créez-y mon propre dossier (par exemple avec le nom de ma société) tel que / lib / web / company pour garder tous mes fichiers personnalisés séparés des fichiers par défaut de Magento

Raphael chez Digital Pianism
la source
1

Actuellement, Magento 2 ne fournit aucun moyen recommandé d'étendre la bibliothèque à l'échelle mondiale. La manière prévue est d'ajouter tous vos styles dans des thèmes personnalisés.

Alex
la source