I'm using view classes for my templating. These view classes often require the Routing class to get URI's from other pages. You could actually say that the Routing should be available to every view class.
What I'm wondering how would you deal with the dependency injection. Injecting it through the constructor would mean that you will have to include it with every view class in many controllers. This would seem wrong to me.
You would also include it trough class extending but I don't think all views deserve a base class for just the routing library and it would able break the SOLID rules you do it because of a dependency that is not directly related to the child class.
My last option would be injecting it trough a public variable that injects it at a single place just before the template rendering.
How did you guys solve this problem? I'm looking for a clean non repetitive way.