Я ищу способ использовать TimelineJS с реализацией AMD RequireJS. Я могу частично работать, например.
define(["storyjs", "timelinejs", ...], function(storyjs, timelinejs, ...) {
createStoryJS({
type: 'timeline',
width: '800',
height: '600',
source: { ... }, // sample JSON
embed_id: 'timeline-embed'
});
});
Приведенное выше создает временную шкалу, но storyjs
(который экспортирует VMM
в моей конфигурации RequireJS) всегда пытается выполнить собственную загрузку библиотек TimelineJS, что неизменно приводит к ошибкам в консоли Firebug/инструментов разработчика.
Я либо ищу способ программно создать объект TimelineJS (примеров которого я не нашел), сказать StoryJS не загружать библиотеки с помощью своего механизма (потому что я их уже предоставил) и в целом интегрировать TimelineJS с решением AMD.
Какие-либо предложения?
ОБНОВЛЕНИЕ:
Используемая конфигурация RequireJS приведена ниже. Для личного использования у меня есть тенденция переименовывать библиотеки JS и добавлять их номера версий.
var require = {
waitSeconds: 5,
paths: {
"app": "../js/app"
// ** Libraries
,"backbone": "../js/lib/backbone-1.1.0.min"
,"bootstrap": "../js/lib/bootstrap-3.0.2.min"
,"jquery": "../js/lib/jquery-1.10.2.min"
,"jquery-ui": "../js/lib/jquery-ui-1.10.3.min"
,"json2": "../js/lib/json2"
,"underscore": "../js/lib/underscore-1.5.2.min"
// ** TimelineJS
,"storyjs": "../js/lib/storyjs-embed-2.0.3.min"
,"timelinejs": "../js/lib/timeline-2.26.3.min"
// ** RequireJS Plugins
,"domready": "../js/lib/plugins/requirejs/requirejs-plugin-domready-2.0.1"
,"i18n": "../js/lib/plugins/requirejs/requirejs-plugin-i18n-2.0.4"
,"text": "../js/lib/plugins/requirejs/requirejs-plugin-text-2.0.10"
},
shim: {
'backbone': { deps: ['underscore'], exports: 'Backbone' }
,'bootstrap': { deps: ['jquery'] }
,'jquery': { exports: '$' }
,'json2': { exports: 'JSON' }
,'storyjs': { exports: 'VMM' }
,'timelinejs': { deps: ['storyjs'] }
,'underscore': { exports: '_' }
}
};
createStoryJS
не является квалифицированным, похоже, вы используете глобальные переменные браузера, а не зависимости, загруженные AMD. - person kryger   schedule 21.11.2013createStoryJS
(например,VMM.createStoryJS(...)
, и я не уверен, что это вообще работает), будет ли проблема по-прежнему заключаться в том, что StoryJS пытается загрузить библиотеки, используя свой собственный механизм? Спасибо! - person Sean Quinn   schedule 21.11.2013createStoryJS()
. Как только я буду уверен, я уточню код и опубликую в качестве ответа. - person Sean Quinn   schedule 21.11.2013