Использование Almond со встроенными requireJs

Вот моя часть файла grunt, где я определяю задачу requirejs:

    requirejs: {
        dist: {
            options: {
                name: 'almond',
                mainConfigFile: "<%= yeoman.app %>/js/main.js",
                out: '.tmp/require/js/app.js',
                insertRequire: ['startup'],
                optimize: 'none'
            }
        }
    }

Теперь в моем приложении я в основном загружаю источники поставщиков, которые я скачал через Bower.

Однако мне нужно загрузить модуль ampitude.com, и у него, похоже, нет линковки.

Итак, вот мой код:

define(['application/amplitude/module', 'require'], function (module, require) {
    'use strict';

    module.provider('$amplitude', [function $amplitudeProvider() {
        this.$get = ['$q', function ($q) {
            var sync = $q.defer();

            requirejs.config({
                paths: {
                    'amplitude': 'https://d24n15hnbwhuhn.cloudfront.net/libs/amplitude-3.4.1-min.gz'
                },
                shim: {
                    'amplitude': {
                        exports: 'amplitude'
                    }
                }
            });
            require(['amplitude'], function (amplitude) {
                sync.resolve(amplitude);
            });
            return {
                getInstance: function() { return sync.promise; }
            }; 
        }];
    }]);
});

Это работает как шарм в режиме разработки. Теперь, когда я пытаюсь выпустить релиз (который запускает миндальную задачу), это успешно, но я получаю сообщение об ошибке во время выполнения

Uncaught Ошибка: не определено отсутствует

Я пробовал разные способы написания этого, но все не удалось... Кто-нибудь смог показать свет?

0 ответов

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