Я хочу вызвать функцию func2
из функции образца функции func1
. Может кто-то предложить способ достичь этого?
class A
{
public func1()
{
let sample = function()
{
//call func2... but how?
}
}
public func2()
{
}
}
Спасибо в Advance
Используйте ключевое слово this
с обозначением функции arrow
следующим образом:
class A
{
public func1()
{
let sample = () =>
{
this.func2();
}
}
public func2()
{
}
}
Трюк использует функцию arrow
, потому что функция arrow
изменяет определение this
как экземпляр class
вместо текущей области. Вы можете прочитать больше здесь
this
относится к внутренней sample
.
this.func2()
?this
относится к внутреннейsample
(то есть, как называетсяsample
).