Skip to content
← Back to rules

vue/no-multiple-slot-args 制限

An auto-fix is available for this rule.

何を禁止するか

スコープ付きスロットに複数の引数を渡すことを禁止します。

なぜこれは問題か?

ユーザーは引数を固定された順序で使用しなければならず、必要のない引数を省略できません。 たとえば、5つの引数を渡すスロットがある場合、ユーザーが実際に必要なのは最後の2つだけでも、すべての5つの引数を宣言しなければならないことになります。

詳細については vuejs/vue#9468 を参照してください。

このルールに対して誤りなコード例:

vue
<script>
export default {
  render(h) {
    var children = this.$scopedSlots.default(foo, bar);
    var children = this.$scopedSlots.default(...foo);
  },
};
</script>

このルールに対して正しいコード例:

vue
<script>
export default {
  render(h) {
    var children = this.$scopedSlots.default();
    var children = this.$scopedSlots.default(foo);
    var children = this.$scopedSlots.default({ foo, bar });
  },
};
</script>

使い方

設定ファイルまたは CLI でこのルールを有効化するには、次のように使用できます:

json
{
  "plugins": ["vue"],
  "rules": {
    "vue/no-multiple-slot-args": "error"
  }
}
bash
oxlint --deny vue/no-multiple-slot-args --vue-plugin

参照