Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2016, 17:53
Новичок на форуме
Отправить личное сообщение для inozemcev Посмотреть профиль Найти все сообщения от inozemcev
 
Регистрация: 24.04.2013
Сообщений: 4

Сборка для работы с библиотекой awayjs
Я достаточно недавно стал разбираться с workflow javascript проектов поэтому возможно мой вопрос касается не столько непосредственно библиотеки awayjs сколько общего понимания импорта модулей и согласования зависимостей.

Итак, я смог настроить стандартный workflow проекта на простейшем greeter примере. Этот пример работает не с чистым javascript, а с typescript. Сначала код компилируется в javascript и на втором этапе собирается итоговая сборка, включающая в себя преобразования типа browserify, sourcemaps и прочее.

Для подключения библиотеки awayjs я инсталировал ее в локальный репозиторий, используя npm

Код:
npm install awayjs-full --save-dev
Библиотека теперь в репозитории node_packages и доступна для typescript кода, он видит все классы библиотеки:

import * as awayjs from "awayjs-full";

class Away3D {
    // engine variables
    private _view: awayjs.View;
    // private cameraController: awayjs.HoverController;

    constructor() {
        this.init();
    }

    private init(): void {
        console.log("Init Away3D");
        this.initEngine();
    };

    private initEngine(): void {
        console.log("Init Engine");
        this._view = new awayjs.View(new awayjs.DefaultRenderer());
    }
};

window.onload = function () {
    new Away3D();
};


Проблема в том что после компиляции итогового javascript кода, сам javascript уже этубиблиотеку не видит и соответсвенно не может завернуть ее классы в итоговый .js. gulp таск который заворачивал до этого greeter не может импортировать библиотеку и ругается на require("awayjs-full").

Я не понимаю что делать дальше. Насколько я понял в исходном примере с greeter работая с дополнительными библиотеками типа jquery они подтягивались не из node js репозитория а откуда то еще, в частности я работал с typings, при сборке bundle я давал ссылку на tsd.d.ts этого репозитория вместе с исходниками typescript, в файле были ссылки на интерфейсы jquery, chai и jasmine в формате typescript.
Но я не совсем понимаю пока какое они имели отношения к итоговым библиотекам на .js. Тем не менее greeter собирался и работал и с jquery и c jasmine тестами.

Правильно ли я понимаю что проблема в этом или есть что-то еще? В репозитории typings awayjs библиотеки пока нет, она исключительно в npm. У самой библиотеки все исходники открыты и лицензия позволяет свободно использовать ее в проектах. при инсталяции в node_packages она грузится в том числе со своими галп тасками, но я не понимаю как в итоге всем этим пользоваться.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Требуется программист на QML для создания интерфейса клиентской программы для общения m.simakov Работа 0 11.02.2016 18:07
Плагин для работы с соц сетями Евгений_Лазаренко Общие вопросы Javascript 1 13.12.2014 18:30
JS-скрипт для вывода результата работы PHP-скрипта в заданном месте страницы Tycoon AJAX и COMET 0 06.11.2009 10:18
Модуль для работы с модулями JSprog Ваши сайты и скрипты 29 02.09.2009 13:31
Script для автоматизации работы с браузером ksa791 Общие вопросы Javascript 6 02.04.2009 14:30