При вызове файла JavaScript из проекта Angular 2Jquery

Программирование на jquery
Ответить
Anonymous
 При вызове файла JavaScript из проекта Angular 2

Сообщение Anonymous »

Я написал элемент управления календарем на jQuery, который хотел использовать в проекте Angular 2.
Из других ответов по этой теме я узнал, что могу использовать элементы jQuery getScript() API для вызова внешних файлов JavaScript.
Мой календарь.comComponent.ts выглядит следующим образом:

Код: Выделить всё

import { Component, OnInit, AfterViewInit }     from '@angular/core';
import { Auth }                                 from '../auth.service';

declare var $:any;
declare var CustomCal:any;

@Component({
selector:       'app-calendar',
templateUrl:    './calendar.component.html',
styleUrls:      ['./calendar.component.css']
})
export class CalendarComponent implements OnInit {

private year : number;
myCal : any;

constructor(private auth : Auth) {
}

ngOnInit() {
}

ngAfterViewInit() {
this.year   = 2017;

$.getScript('./app/calendar/zapCalendar.js', function(){
console.log("got call'd back");
this.myCal = new CustomCal(2017);
});
}
}
Я получаю сообщение консоли «получил обратный звонок», а затем сообщение об ошибке о том, что CustomCal не определен.
Мой класс CustomCal определен в zapCalendar.js следующим образом:

Код: Выделить всё

class CustomCal
{
constructor(nYear) {

this._mouseDown     = false;
this._mouseDrag     = false;

this._lastItem      = 0;
this._nYear         = nYear;

this.CreateCalendarFrame();
this.AddEventHandlers(this);
}

...
}
Я попробовал экспортировать класс в файл zapCalendar.js, а также попробовал добавить следующее в файл zapCalendar.js:
Я попробовал экспортировать класс в файл zapCalendar.js:
p>

Код: Выделить всё

$( function() {
var myCal = new CustomCal(2017);
});
Что мне здесь не хватает?
Обновление:
Я' я только что заменил это (в zapCalendar.js):

Код: Выделить всё

$( function() {
var myCal = new CustomCal(2017);
});
с этим:

Код: Выделить всё

var x = new CustomCal(2017);
И теперь календарь отображается правильно. Но мне бы хотелось (если возможно) получить ссылку на календарь в моем машинописном тексте. Возможно ли это?


Подробнее здесь: https://stackoverflow.com/questions/430 ... -2-project
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Jquery»