2012-04-22 7 views
1

私はパラメータとしてCanvasRenderingContext2Dを受け取り、描画を実行する関数を持っています。私はそれを渡すためにしようとするたびに、私はこの取得:ダーツでキャンバスの2Dコンテキストを渡す

CanvasRenderingContext2D is not assignable to CanvasRenderingContext2D 

をその関数は次のようになります。

void draw(CanvasRenderingContext2D context) { 
    ... 
    } 

私は「shouldnれ、すべてが(ちょうどJSのような)ダートでの参照として渡されたと思いましたそのような問題を引き起こす。オブジェクトへの参照ではなくオブジェクト自体への参照をしたいと言う方法がありますか?それとも私が知っておくべきことが他にありますか?

EDIT:

問題を1つのファイルで、私はダーツ輸入ということであった:HTMLを、別に、私はダーツ持っていた:DOMを。対応するインタフェースの名前は同じですが、それらは異なっています。

+1

を参照していますダーツ:htmlとdart:domの両方を使用していますか? –

+1

あなたは正しいです。それが私の問題でした。このエラーはダーツが認識される前に表示されました:domとdart:htmlは互いに互換性がありません;) – Pijusn

答えて

1

同じアプリケーションでdart:domdart:htmlを使用している可能性があります。名前空間

#import('dart:html'); 
#import('dart:dom', prefix: 'dom'); 

でそれらのいずれかをインポートする必要があり、このようなエラーを回避するために、あなたはより多くの情報のため

window  // dart:html window 
dom.window // dart:dom window 

として、それらの両方で定義されたコードにアクセスすることができますthis答え

関連する問題