0
<div id='universals' data-path='/a/' data-load='1'></div>

これは本当に奇妙なケースです。上記の HTML を書き込む PHP を介して渡すパスに基づいてリソースの場所を認識するフロントエンド コード ( JavaScript ) があります。

これは、サーバー上のフォルダーのルートの名前を簡単に変更できる優れた機能であり、PHP が現在の作業ディレクトリを決定し、上記のコードを介してクライアントに送信するため、すべてが機能し続けます。

反省の一形態です。

ただし、これをフロントエンドのアプリケーション フレームワークに組み込みたいと考えています。

ここで、私の JavaScript ライブラリーを foo.js と呼びましょう。これは dom 要素に依存しています。これは良い習慣ではないと確信しています。

私の計画では、このようにIDを設定可能にするだけです。

foo.setUniverisal('#universal');

次に、どの属性が必要かをドキュメントに記載します。

あらゆる種類のdom依存を排除​​するための他のアイデアやより良い方法はありますか?

4

1 に答える 1

1

最良のアプローチは最も単純なものだと思います:

foo.setDataPath("pathToData")

次に、クライアント側の「接着剤」コード (ライブラリ、HTML、および PHP をまとめるコード) は、タグからパスを取得し、foo.setDataPath を呼び出します。これが最も直交する設計になります ( 「直交性」とは? )。

関連する状況の例: このタグを生成できない HTML からこのライブラリを初期化するとどうなるでしょうか。たとえば、HTML は静的に (または CDN 経由で) 提供されるためです。

于 2013-03-23T21:58:38.920 に答える