3

を含む.asファイルを含む MXML コンポーネントがあります。

<fx:Script source="myfile.as" />

asdocを実行すると、次のような大量のエラーがスローされます

"Error: The private attribute may be used only on class property definitions."
"Error: The public attribute can only be used inside a package."

この件に関して私が見つけた唯一の有用な情報は、この記事http://danielmclaren.net/2009/08/28/using-asdoc-with-mxml-files-and-included-scriptsにありました。
この問題は、次の 2 つの解決策とともに説明されています。

  • 解決策 1 は、AS コードを MXML ファイルに移動することです。そもそもMXMLコンポーネントに外部の.asファイルを使用するという目的に反しているため、実際には最後の手段です。mxml ファイル内のコードはごちゃごちゃしており (mxml にロジックを混在させたくありません)、< !--- ---> asdoc 構文も使用する必要があります。
  • 解決策 2 は、MXML コンポーネントを通常のクラス ファイルから継承させることです。これは、基本クラスにプライベートメンバーがないことを意味し、 internal (コンポーネントを安全にするための個別のパッケージを意味する) またはprotectedのみです。これは、控えめに言っても退屈なものになります。

問題を解決する他の回避策、または asdoc のベータ版/ナイトリー バージョンはありますか? 「最新の製品品質リリース」である Flex 4.1.0.16076 SDK を使用しています。

アップデート

svn トランク (4.5.0 rev. 16942) から asdoc を使用してみましたが、問題は解決しません。

4

1 に答える 1

2

正直なところ、私は解決策 1 に慣れてしまい、振り返ることはありませんでした。私はすでに AS と MXML を混在させていると思いますが、どこが悪いのでしょうか? さらに、AS と MXML の両方を橋渡しするメンバーをハイライトできるという利点もあります。たとえば、HBox の id プロパティのテキストをクリックすると、コード ウィンドウに、そのメンバーが参照されているページ上の場所を示すマーカーが表示されます。これは、私にとって、AS を MXML から分離することについての煩わしさを放棄する価値のある優れた機能です。

于 2010-07-27T20:54:27.387 に答える