.then() je promise (pokud se tedy nepletu); ty proměnný co máš ve $scope nemají nastavenu výchozí hodnotu v controlleru? Třeba na null, na prázdnej řetězec, ...?
Mimochodem: používáš $scope, tj. způsob Angularu před verzí 1.3 - ten přinesl this. Vyhovuje ti to tak? Dnes je to už velmi archaický.