JSFiddle - React, Tailwind, and code Playground
by joeyczech
TypeScript
class Test
{
public CallFn(passedFn: ICallback, ...args: any[]): void
{
//passedFn(args); // error
let hasTwoArguments = args && args.length && args.length === 2;
if(!hasTwoArguments)
{
return;
}
let firstArgument: string = args[0];
let secondArgument: number = parseInt(args[1]);
passedFn(firstArgument, secondArgument);
}
}
interface ICallback
{
(a: string, b: number): void
}
class Callback
{
public MyFunction = (a: string, b: number) =>
{
alert("it's working");
}
}
let testIntance = new Test();
let callbackIntance = new Callback();
testIntance.CallFn(callbackIntance.MyFunction, 1, 2);