Bonjour,
Je ne sais pas si je m'adresse sur le bon forum mais j'ai récemment dû convertir mon code JS en code ES5, je l'ai fait car dans mon code j'avais une classe JS que Internet Explorer 11 n'était pas capable de lire.
Ne voulant pas changer tout mon code rien que pour lui, j'ai décidé de passer à l'ES5 afin de pouvoir convertir mon code en JS lisible sur tous les navigateurs que j'ai prédéfini (et que j'espère plus tard je n'aurai plus de problème de ce genre !)
Mon problème est que dans mon code j'utilise une classe qui s'appelle SP (pour SharePoint) qui n'existe pas dans le contexte courant mais uniquement quand mon package est sur le serveur SharePoint.
Si je mets tout en haut de mon fichier, la ligne ci-dessous, cela fonctionne.
Mais ce que j'aimerais, c'est avoir la possibilité d'importer cette classe SP avec le package "@types/sharepoint" (TypeScript définitions, si je ne me trompe pas) qui définit les différentes fonctions et interfaces présentes dans cette classe (chose qui m'es très utile).
Code : Sélectionner tout - Visualiser dans une fenêtre à part const SP = ''
Et ainsi mon éditeur (PhpStorm) peut faire de l'auto complétition. Ce qui est le cas quand j'importe ce package avec la ligne suivante :
Mais la compilation ne fonctionne plus alors et me retourne cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part import { SP } from '@types/sharepoint'
Le package est bien présent dans "node_modules" et est bien dans les dépendances de mon fichier "package.json".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ERROR in ./src/app.js Module not found: Error: Can't resolve '@types/sharepoint' in '/var/www/sharepoint/libraries/src' @ ./src/app.js 8:0-39 56:8-10
Est-ce que je dois convertir mon code en TypeScript ?
Pouvez-vous m'aider ?
Merci
Partager