Существует две проблемы с кодом, вызывающим "неопределенную" ошибку.
Из официальной документации: Документация AngularJs
$onInit () - Обращенный каждый контроллер после всех контроллеров на элементе был создан и имел их инициализированную привязку (и перед пред & сообщение, связывающее функции для директив по этому элементу). Это - хорошее место для помещения кода инициализации для контроллера.
проблема быть - то, что нотация стрелки не будет иметь своего собственного объема, а скорее использовать, это включает объем. Означание, что при использовании "этого" будет относиться к объекту окна, а не компоненту. Так вызов this. $onInit () назовут на окне и не запустят, потому что это не существует на окне.