1

ない私は:私のユニットテストで角1 /ジャスミン/カルマ - 定義されていない私のコントローラでオブジェクト

$onInit() { 
    this.doShowInfoMsg() 
} 

doShowInfoMsg() { 
    return this.checkProjectOnSalesLength = this.realEstateProjectMotivation.realEstateProjectOnSales.length < 1 
} 

(ミニマリスト):

describe('iadMyIadProjectMotivationsHowSaleCurrentCapitalDetail',() => { 
     let scope 
     let compile 
     let element 
     let ctrl 

     beforeEach(() => { 
     angular.mock.module('projectMotivationsHowSaleCurrentCapitalModule') 
     }) 

     beforeEach(inject(($componentController) => { 
     let bindings = { 
      realEstateProjectMotivation: { 
      realEstateProjectOnSales: [ 
       { 
       id: 35, 
       satisfied: true 
       } 
      ] 
      } 
     ctrl = $componentController('projectMotivationsHowSaleCurrentCapitalDetail', null, bindings) 
     })) 
    }) 

エラー:

TypeError: undefined is not an object (evaluating 'this.realEstateProjectMotivation.realEstateProjectOnSales') 

私はconsole.log (ctrl.realEstateProjectMotivation.realEstateProjectOnSales)の配列を持っていますが、私はよく定義された配列realEstateProjectOnSalesを持っています:LOG: [Object{id: 35, satisfied: true}]

このエラーはどこから来る可能性がありますか?

+0

'[オブジェクト{:35、満足真ID}]を参照、満足:true}] '、' Object'なし。 –

+0

@CommercialSuicide違いは何ですか? –

+0

私の短い答えは –

答えて

1

[Object{id: 35, satisfied: true}]は、[{id: 35, satisfied: true}]である必要があります。Objectはありません。 Objectはコンストラクタなので、このコンストラクタを間違った方法で呼び出そうとしています。最初の構造では、エラーが発生します。

間違った方法:

var foo = [Object{id: 35, satisfied: true}]; 
 
console.log(foo);

正しい方法:Objectコンストラクタについての詳細情報については

var foo = [{id: 35, satisfied: true}]; 
 
console.log(foo);

、あなた使用しようとしていた:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object

+0

ですが、私の場合はどうなっていますか? –

+0

@MouadEnnaciri、* "はよく定義されています:' LOG:[Object {id:35、satisfied:true}] '" *。それはどこに定義されていますか?私は提供されたコードでそのような行が表示されません –

1

対処: `でなければならないだけ` [{ID:35

scope.project = { 
    realEstateProjectMotivation: { 
    realEstateProjectOnSales: [ 
     { 
     id: 35, 
     satisfied: true 
     } 
    ] 
    } 
} 

realEstateProjectMotivationためにreal-estate-project-motivation="project.realEstateProjectMotivation"

+0

あなたは解決策を見つけました、クール! –

関連する問題