EmberJS 2.15.1 Не удалось найти модуль `fullcalendar` - PullRequest
0 голосов
/ 12 февраля 2019

Итак, я недавно обновил свое приложение до Ember 2.15.1 и пытаюсь все переключить на NPM с Bower.Я пытался заставить полный календарь сотрудничать, но мне не повезло (последний тоже переключился).Я подумал, что это может быть проблема с кешем, поэтому и кэш NPM / Bower, и переустановленный NPM.Ниже приведена ошибка и код для ее импорта.

У меня есть import 'fullcalendar'; в верхней части компонента календаря.

Uncaught Error: Could not find module `fullcalendar` imported from `name/components/calendar`
    at missingModule (loader.js:247)
    at findModule (loader.js:258)
    at Module.findDeps (loader.js:168)
    at findModule (loader.js:262)
    at requireModule (loader.js:24)
    at Class._extractDefaultExport (index.js:389)
    at Class.resolveOther (index.js:109)
    at Class.superWrapper [as resolveOther] (ember-utils.js:423)
    at Class.resolve (resolver.js:164)
    at resolve (container.js:873)

Когда импорт удаляется, я получаю стандартный fullCalendar is not a function ошибка.Удаление / добавление import $ from 'jquery'; не меняет ничего из этого.Вот часть кода, в которой он ошибается, хотя его удаление просто переходит к следующему упоминанию о fullCalendar.

 didInsertElement: function(){
      $('.sample-calendar').fullCalendar({
        header: {
          left: '',
          center: '',
          right: 'title prev,next'
        },
        events: [],
        theme: true,
        aspectRatio: 0
      });
    },

Импорт из ember-cli-build.

app.import('node_modules/fullcalendar/dist/fullcalendar.min.js');
app.import('node_modules/fullcalendar/dist/fullcalendar.min.css');
app.import('node_modules/fullcalendar/dist/plugins/gcal.min.js');

А потом мой пакет.json.

"devDependencies": {
    "broccoli-asset-rev": "^2.4.5",
    "ember-ajax": "^3.0.0",
    "ember-cli": "~2.15.1",
    "ember-cli-app-version": "^3.0.0",
    "ember-cli-babel": "^6.3.0",
    "ember-cli-datepicker": "wesm87/ember-datepicker#master",
    "ember-cli-dependency-checker": "^2.0.0",
    "ember-cli-eslint": "^4.0.0",
    "ember-cli-htmlbars": "^2.0.1",
    "ember-cli-htmlbars-inline-precompile": "^1.0.0",
    "ember-cli-inject-live-reload": "^1.4.1",
    "ember-cli-moment-shim": "~3.5.0",
    "ember-cli-qunit": "^4.0.0",
    "ember-cli-shims": "^1.1.0",
    "ember-cli-sri": "^2.1.0",
    "ember-cli-uglify": "^1.2.0",
    "ember-data": "~2.15.0",
    "ember-export-application-global": "^2.0.0",
    "ember-fetch": "3.4.0",
    "ember-load-initializers": "^1.0.0",
    "ember-moment": "~7.5.0",
    "ember-resolver": "^4.0.0",
    "ember-source": "~2.15.0",
    "eslint-plugin-ember": "~4.1.2",
    "fullcalendar": "^4.0.0-alpha.4",
    "loader.js": "^4.2.3",
    "pikaday": "~1.4.0",
  },

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Чтобы разрешить стороннюю библиотеку с импортом, ember нужен вендор шим.Вы можете проверить здесь , просто запустить

ember generate vendor-shim fullcalendar

, импортировать шим вендора в ваш ember-cli-build и, наконец, импортировать полный календарь.Кстати, есть обертка для полного календаря .

0 голосов
/ 12 февраля 2019

Существует компонент ember 'ember-fulcalendar': https://github.com/scoutforpets/ember-fullcalendar/

В файле package.json есть следующее: "fullcalendar": "^ 3.6.0", "fullcalendar-scheduler": "^ 1.8.0 "

Вы можете переключиться на использование компонента или посмотреть, как компонент делает это.

...