2016-11-03 4 views
2

Я пытаюсь использовать Guillotine, плагин для обрезки изображений. У меня есть модальный компонент, который загружает изображение, которое я хочу обрезать. В модальной классе, я импортировать JQuery, и я пытаюсь импортировать гильотину, но я получаю следующее сообщение: «функция гильотины не существует»Как использовать гильотину (изображение обреза) с Aurelia JS? [ERROR]

Guillotine.js находится в корне компонентов, вместе с JQuery. Я также использовал NPM для установки.

Вот мой класс:

import {bindable, bindingMode} from 'aurelia-framework'; 
import $ from 'jquery'; 
import 'guillotine'; 

export class ModalCrop{ 
    @bindable({ defaultBindingMode: bindingMode.twoWay }) display = 'none'; 

    created() { 
     $('#thepicture').guillotine({ width: 400, height: 300 }); 
    } 
} 

Может кто-нибудь мне помочь?

ответ

2

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

Итак, я говорю, зачем бороться с ними?

Вы можете использовать npm для установки виджета, если хотите, просто загрузите его с помощью тега сценария.

Или, если вы используете CLI Aurelia, просто добавьте этот материал в раздел «preend» от vendor-bundle.

Проверьте этот пример для другого виджета jQuery, который я написал для другого вопроса. Он использует скриптовые теги: https://gist.run/?id=6e4a6ea77751ae9c69b178eb51105137

+0

Извините, я запутался ... Как я мог вызвать методы Gullotine с помощью тегов скриптов? –

+1

То же самое можно сказать и о годах. Вы загружаете jQuery и Guillotine с использованием тегов скриптов. Это делает jQuery доступным во всем мире, а гильотину доступно на объекте jQuery. в этом случае нет необходимости использовать операции импорта. Просто проверьте пример gist, который я разместил, который показывает jquery, и виджет загружается с тегами скрипта в 'index.html', а затем используется в' app.js'. Кроме того, посмотрите, как я использую пользовательский атрибут 'ref' вместо' id' для элемента, к которому я применяю виджет. Это сделает ваш код более многоразовым. –

+0

Ok Ashey, я попробую и скажу, работает ли он. –