fix(viewController): use $watch instead of $observe