2016-11-30 4 views
1

Я пытаюсь использовать plotly Java событие сценария щелчка в угловом 2 проекта, но она возвращается ошибку нижеPlotly нажмите событие в угловых 2 приложения

Property «на» не существует на типе «HTMLElement».

let myPlot = document.getElementById('donutChartId'); 
myPlot.on('plotly_click', function(data){ 
console.log(data.points[0].label); 
}); 

Угловая конструкция не работает из-за этого.

ответ

1

.on() является jquery method

Если вы используете Jquery в вашем приложении вы можете создать объект Jquery от выбранного элемента, чтобы использовать этот метод.

let myPlot = document.getElementById('donutChartId'); 

to 

let myPlot = $(document.getElementById('donutChartId')); 

Надеюсь, это поможет!

+0

Я попробовал, что и раньше, но он говорит: «Не удается найти имя«$» –

+1

Вы добавили типы для JQuery? у вас должны быть установленные типы, которые должны быть в вашем depenedcies для типов «@ types/jquery»: «1.10.31», ', а также фактическая библиотека jquery должна быть частью вашего приложения. –

+0

Я добавил, что Но вижу ту же ошибку. –

0

Думайте, что это скорее ошибка компиляции. Но ваш код будет работать. Если вас беспокоит ошибка. Вы можете создать дочерний класс для класса HTMLElement ES6. Добавьте приведенный ниже код в свой компонент.

class CustomHTMLElement extends HTMLElement { 
    constructor() { 
    super(); 
    } 
    on(event_type, cb) { 
    } 
} 

и приведение типа при выборе элемента

let myPlot = <CustomHTMLElement>document.getElementById('donutChartId');

 Смежные вопросы

  • Нет связанных вопросов^_^