class Foo {}
class Foo2 {
function __construct(Foo $foo) {
// ..
}
}
$foo = new Foo();
$foo2 = new Foo2($foo);
this.$router.push(
{ path: '/login' },
data => console.log('data', data),
err => console.log('err:', err)
)
router.onError(err => {
console.log('router error:' + err)
})
Если $api нельзя зассетить, то можно через всякие хаки туда подкинуть:
Или через рефлексию.
А вообще, надо писать так, чтобы не было внутренних зависимостей. В этом помогут Dependency injection и Dependency inversion.