私はVue.jsのプラグインで、Object.assign
のpolyfillをIE10用のプラグインにバンドルするように頼んだという問題がありました。私はこれが一般的にベストプラクティスかそうでないかと思っています。プラグインをポリフィルするか、実装に任せますか?
これは簡単ですが、ネイティブサポートのあるブラウザでは不要なオーバーヘッドがプラグインに追加されます。このようなポリフィルを必要とする実装にこれを残す方が良いでしょうか?
私はVue.jsのプラグインで、Object.assign
のpolyfillをIE10用のプラグインにバンドルするように頼んだという問題がありました。私はこれが一般的にベストプラクティスかそうでないかと思っています。プラグインをポリフィルするか、実装に任せますか?
これは簡単ですが、ネイティブサポートのあるブラウザでは不要なオーバーヘッドがプラグインに追加されます。このようなポリフィルを必要とする実装にこれを残す方が良いでしょうか?
私の意見では、プラグインを必要以上に出荷するべきではありません。 1人のユーザーのアプリがIE10のサポートを必要としているため、すべてのユーザーのはを意味しません。
Vue自体がIE10をサポートするのに苦労していて、Vueプラグインもそれに従うことを期待しているのであれば、polyfillを含めて見ることができます。しかし、ほとんどの場合、プラグインのユーザーがポリフィルを必要とする場合、プロジェクトにそれを追加できない理由はありません。
これまでネイティブにサポートしていたブラウザでのポリフィルに関するコメントについては、ポリフィルを適用する前にブラウザにネイティブサポートがあるかどうかをチェックするのが一般的です。例:
if (typeof Object.assign !== 'function') {
Object.assign = myPolyfill
}