Проблемы с конечными точками в Webpack и GoogleApis

Я пытаюсь использовать googleapis в проекте веб-пакета. Всякий раз, когда я призываю

static getApi = () => {
    google.sheets('v4');
}

Я получаю следующее Error: Unable to load endpoint ../apis/sheets("v4"): Cannot find module "."Исходя из строки 50 googleapis/lib/googleapis.jsчто в основном var Endpoint = require(endpointPath);,

Я попытался заглянуть в endpointPath, но он оказался правильным: node_modules/googleapis/apis/sheets/v4

Мой webpack.config.js представлен ниже:

module.exports = {
   entry: ['babel-polyfill','./src/index.js'],
   target: 'async-node', // Improved performance in node version 6+
   node: {
     __dirname: true
   },
   output: {
     filename: './dist/bundle.js',
     libraryTarget: 'commonjs2'
   },
   module: {
     rules: [
      {
    test: /\.(graphql|gql)$/,
    exclude: /node_modules/,
    loader: 'graphql-tag/loader'
  },
  {
    test: /\.js$/,
    exclude: /(node_modules)/,
    use: {
      loader: 'babel-loader',
        options: {
          presets: ['env'],
          plugins: [require('babel-plugin-transform-class-properties')]
        }
      }
    }
  ]
  },
  devtool: 'source-map'
}

Удаление

node: {
  __dirname: true
},

приводит к получению ENOENT: no such file or directory, scandir '/apis' из строки 62 вышеупомянутого googleapis.js

1 ответ

Согласно этому комментарию к проблеме github, клиент узла googleapis должен быть исключен из любого механизма связывания на стороне сервера.

googleapis (google-api-nodejs-client) будет работать в Node.js. Исключение googleapis из любого комплекта на стороне сервера (просто позвольте модульной системе Node загрузить его для вас) - лучший вариант.

Другие вопросы по тегам