Lightning Locker で Proxy オブジェクトを使用する方法
Lightning Locker は、標準 JavaScript Proxy オブジェクトを使用して、基盤となる JavaScript オブジェクトへのコンポーネントのアクセスを絞り込みます。Proxy オブジェクトは、同じ名前空間のコンポーネントによって作成された DOM 要素のみがコンポーネントに表示されるようにします。
Proxy オブジェクトは、未加工の JavaScript オブジェクトと同じ方法で操作できますが、ブラウザのコンソールに Proxy として表示されます。これは、ブラウザの���バッガを使用して調査を開始する場合に、Lightning Locker による Proxy の使用状況を理解するのに役立ちます。
コンポーネントで JavaScript オブジェクトを作成すると、Lightning Locker から未加工の JavaScript オブジェクトが返されます。Lightning Locker でオブジェクトを絞り込むと、Proxy オブジェクトが返されます。次に、Lightning Locker でオブジェクトを絞り込み、Proxy オブジェクトを返すシナリオを示します。
- オブジェクトを異なる名前空間のコンポーネントに渡す。
- API バージョン 40.0 未満のコンポーネントのオブジェクトを、API バージョン 40.0 以上のコンポーネントのメソッドに渡す。
- cmp.get() をコールして、ネイティブ JavaScript オブジェクトまたは配列の値で設定した属性値を取得する。オブジェクトまたは配列が初めて作成されたときは絞り込まれません。
次のオブジェクトにアクセスすると、Lightning Locker から Proxy オブジェクトが返されます。
- HTMLCollection インターフェースを実装するオブジェクト
- HTML 要素を表す SecureElement オブジェクト
標準 JavaScript Proxy オブジェクトについての詳細は、「Mozilla Developer Network (Mozilla 開発者ネットワーク)」を参照してください。