Erreur Vue - Impossible de résoudre « https » lors de l'importation du package
P粉891237912
P粉891237912 2024-01-10 16:57:01
0
2
373

J'essaie de créer un projet Vue et d'utiliser le package npm pour me connecter à l'API Retroachievements.org afin d'obtenir des données, mais j'obtiens une erreur. C'est mon processus du début à la fin pour créer un projet et implémenter un package.

  • Accédez à mon dossier de projet et créez le projet en utilisant vue cli : vue create test. Pour les options, je choisis généralement de ne pas inclure le linter, vue version 2 et de tout mettre dans package.json.

  • cd dans le dossier /test : cd test 并安装 Retroachievements npm 包:npm install --save raapijs

  • Modifiez App.vue comme suit (excuses pour le formatage du code, je ne sais pas pourquoi le message n'est pas formaté/coloré correctement...) :

    const RaApi = require('raapijs');

    Exporter la valeur par défaut{ Nom : 'Application',

    data: () => ({
          api:null,
          user: '<USER_NAME>',
          apiKey: '<API_KEY>',
      }),
    
      created() {
          this.api = new RaApi(this.user, this.apiKey);
      },

    }

  • Exécutez `npm runserve' et obtenez l'erreur :

    Erreur dans

    ./node_modules/raapijs/index.js 2:14-30

    Module introuvable : Erreur : Impossible de résoudre 'https' dans 'C:ProjectsWebtestnode_modulesraapijs'

J'utilise Windows 10, Node 16.17.0, npm 8.15.0, vue 2.6.14, vue CLI 5.0.8, raapijs 0.1.2.

La première solution ci-dessous indique qu'il peut l'exécuter sans erreur, mais elle ressemble exactement au code que j'essaie. Quelqu'un peut-il voir la différence et la cause de cette erreur ?

EDIT : J'ai réécrit cet article pour être plus clair sur mon processus et fournir plus d'informations, telles que les versions.

P粉891237912
P粉891237912

répondre à tous(2)
P粉107772015

Cette solution fonctionne pour moi. J'ai installé raapijs en utilisant la commande npm install --save raapijs. Ensuite, dans mon composant Vue version 2, j'ai utilisé votre code comme ceci :

const RaApi = require('raapijs');

export default {
  
  data: () => ({
    api: null,
    user: '<USER_NAME>',
    apiKey: '<API_KEY>',
  }),
  
   created() {
    this.api = new RaApi(this.user, this.apiKey);
  },
};
P粉792673958

Il semble que le package raapijs soit conçu pour être utilisé dans un environnement Node, et non dans un environnement basé sur un navigateur Vue, c'est pourquoi j'obtiens l'erreur. Le package lui-même recherche le package https intégré à Node, mais comme il ne s'exécute pas dans Node, il ne le trouve pas.

J'ai donc résolu mon problème en consultant le référentiel github du package et en extrayant les points de terminaison de l'API php réellement utilisés et en les utilisant directement dans mon application au lieu d'utiliser un wrapper de package. Pas aussi soigné et ordonné que je l’aurais souhaité, mais c’est quand même une bonne solution.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal