use the new "self.route" instead of "view.state"
handle "no data" on server