首页 > 解决方案 > 错误 TS2304:找不到名称“需要”。梅尔卡多帕戈

问题描述

大家好,我有以下问题,在编译项目时,我收到一条错误消息: src / app / cart / cart.component.ts (63.25) 中的错误:错误 TS2304: 找不到名称 'require'。我已经尝试实现 npm install --save @ types / node 还检查 tsconfig.app.json 配置,但错误仍然存​​在。我该如何解决?我正在用 Angular 开发一切。我很感激任何帮助

 const mercadopago = require('mercadopago');
    mercadopago.configure({
      access_token: 'Your key'
    });
    let preference = {
      items: [
        {
          title: 'Mi producto',
          unit_price: 100,
          quantity: 1,
        }
      ]
    };
    mercadopago.preferences.create(preference)
      .then(function (response) {
        this.global.init_point = response.init_point;
      }).catch(function (error) {
        console.log(error);
      });
  }

标签: node.jsangulartypescriptmercadopagomercadopagosdk

解决方案


我认为是requirerequire自 Angular 8 起不支持使用 。您必须使用 es 导入。

import * as mercadopago from 'mercadopago'

这是一方面。

在我看来,这mercadopago是一个服务器端库。如果它在内部依赖于 nodeJS,它可能无法工作。此外,您捆绑您的事实access_token是另一个表明有问题的迹象。


推荐阅读