При импорте пакета "gitlab" из MeteorJS возвращается пустой объект - PullRequest
0 голосов
/ 27 марта 2019

Я установил gitlab в свой проект Meteor с meteor npm install --save gitlab и импортировал пакет в файл imports/api/foo.js со всеми следующими вариантами (комментарий на лицевой стороне - это журнал объекта Gitlab):

import Gitlab from 'gitlab';                  // {}
import * as Gitlab from 'gitlab';             // { default: {}, [Symbol(__esModule)]: true }
import { Gitlab } from 'gitlab';              // undefined
const Gitlab = require('gitlab');             // {}
const Gitlab = require('gitlab/dist/es5');    // {}
const Gitlab = require('gitlab/dist/latest'); // {}

Если я запускаю только console.log(require('gitlab')) с NodeJS, я получаю правильный результат.

Как мне импортировать «gitlab» из метеорного приложения?

1 Ответ

1 голос
/ 28 марта 2019

Я попытался воспроизвести проблему с чистым проектом Meteor 1.8.0.2, и он работает нормально для меня:

/ сервер / main.js:

import Gitlab from 'gitlab'

Meteor.startup(() => {
  console.log(Gitlab) // [Function: Bundle]

  const api = new Gitlab({
    url:   'http://example.com', // Defaults to https://gitlab.com
    token: 'abcdefghij123456'  // Can be created in your profile.
  })

  console.log(api) // full API as in documentation
})

Итак, какие у вас есть варианты?

  • Убедитесь, что вы используете gitlab на сервере
  • Проверьте папку node_modules, действительно ли она там установлена.
  • Попробуйте сбросить ваш проект, используя meteor reset, а затем начните снова, чтобы все node_modules были перестроены, а все пакеты Meteor были перестроены, а локальная сборка - перестроена. Это часто исправляет вещи.
  • Создайте новый проект и начните шаг за шагом воспроизводить проблему, начиная с моего рабочего примера, и постепенно меняйте структуру файла в соответствии со структурой вашего проекта.
...