0
현재, 나는 TypeScript
을 확인하려고합니다. 내 옛날 JavaScript
-source에이름 기반 객체 배열을 만드는 방법은 무엇입니까?
내가는 EventListener를위한 간단한 namebased 배열 개체가 :
let _events \t \t = {};
this.addEventListener = function addEventListener(name, callback) {
\t \t if(typeof(_events[name]) == 'undefined') {
\t \t \t _events[name] = [];
\t \t }
\t \t
\t \t _events[name].push(callback);
\t };
\t
\t this.fireEvent = function fireEvent() {
\t \t let fired \t = false;
\t \t let args \t = new Array();
\t \t let name \t = arguments[0];
\t \t
\t \t if(typeof(_events[name]) == 'undefined') {
\t \t \t return;
\t \t }
\t \t
\t \t for(var index = 1; index < arguments.length; index++) {
\t \t \t args.push(arguments[index]);
\t \t }
\t
\t \t _events[name].forEach(function onEvent(event) {
\t \t \t fired = true;
\t \t \t event.apply(this, args);
\t \t }.bind(this));
\t \t
\t \t return fired;
\t };
내가 타이프에서 같은 방법을 만들 수 있습니까?
{
"init": [callback, callback, callback],
"otherEvent": [callback, callback]
}
,이 클래스가 컴파일 한 후 찾을 수없는 것 (사용'ES5'/'ES2015'). 나는 이미 너와 같은지도를 사용하려고 시도했다. .. –
이전 버전의 nodejs 나 웹 브라우저에서 코드를 실행하려고한다면 Map을 사용할 수 없지만 Shim을 사용할 수는있다. 예를 들어 corejs 같은 경우 https://github.com/zloirock/core-js#map –
'Map'이 정의되지 않았기 때문에 문제가 발생하면''target ":"es5 "'를 사용할 필요가있을뿐만 아니라 ''lib ": ["es6 "]'''tsconfig.json' –