Vue.jsでコンポーネントを定義するときに、コンポーネントを使いまわしつつ表示する文言を変えたいってこと結構ありますよね。 例えば 同じモーダル用コンポーネントを利用しつつモーダルに表示する文言だけ変える とは言えJSのから変数として文字列を渡すのもあまりイケてる実装とはいえませんね。 そんなときはという要素を利用して、子のコンポーネントに渡すコンテンツを親のマークアップに定義することができます。 slot要素 そんな時はslotというAPIを利用すると上手い具合にいきます。 下記の実装では、 app内でapp-containerが2つ利用されていますが、各々子コンポーネントの中身をdiv[slot]で設定しているものにしています。 <div id="js-app"> <app> </app> </div> const layoutTpl = ` <div class="app-layo