插槽的默认内容
有的时候为插槽提供默认的内容是很有用的。例如,一个 <submit-button>
组件可能希望这个按钮的默认内容是“Submit”,但是同时允许用户覆写为“Save”、“Upload”或别的内容。
你可以在 <slot>
标签内部指定默认的内容来做到这一点。
<button type="submit"> <slot>Submit</slot> </button> |
如果父组件为这个插槽提供了内容,则默认的内容会被替换掉。
编译作用域
当你想在插槽内使用数据时,例如:
<navigation-link url="/profile"> Logged in as {{ user.name }} </navigation-link> |
该插槽可以访问跟这个模板的其它地方相同的实例属性 (也就是说“作用域”是相同的)。但这个插槽不能访问 <navigation-link>
的作用域。例如尝试访问 url
是不会工作的。牢记一条准则:
父组件模板的所有东西都会在父级作用域内编译;子组件模板的所有东西都会在子级作用域内编译。