2016-04-11 5 views
0

私はpluralsightをフォローしています - ionicでモバイルアプリを構築しています。Lodash:TypeError:未定義の 'name'プロパティを読み取ることができません

が、このコードは例外TypeErrorを示すキープ:私はvm.teamName = team.nameコメントアウト場合は、未定義の

のプロパティ「name」を読み取ることができません。それは動作しますが、チーム名は表示されません。コードはこちら

var team = _.chain(data.teams) 
        .flatten("divisionTeams") 
        .find({ "id": vm.teamId }) 
        .value(); 

     vm.teamName = team.name; 

答えて

0

明らかに、teamは未定義です。 objectからプロパティにアクセスしようとする前に、console.log(team)を行っている間に何が得られるかを確認してください。

var team = _.chain(data.teams) 
        .flatten("divisionTeams") 
        .find({ "id": vm.teamId }) 
        .value(); 

vm.teamName = team.name; 
0

私は次のことをお勧めします:

var divisionTeams = _.map(data.teams, function(team) { 
    return team.divisionTeams; 
}); 

var team = _.find(_.flatten(divisionTeams), {id: 1}); 

_.flattenは、引数のようなものを取ることはありません。ここでdocs

が作業フィドルでください:https://jsfiddle.net/trollr/22sowjhj/

+0

にconsole.log(flattenTeams)。空の配列 –

+0

を返します。それは実用的なフィドルです。何か変えた?参照:https://picload.org/image/rgrrlwlp/flatten.jpg – trollr

関連する問題