naive-ui/demo/documentation/theme/enUS/environment.md

33 lines
770 B
Markdown
Raw Normal View History

2019-12-07 00:02:31 +08:00
# Theme Environment
2020-02-05 13:13:48 +08:00
Sometimes you may need some component to access some values at specific theme. You can use `theme-environment`. Config Consumer & Element have access to theme environment.
2019-12-07 00:02:31 +08:00
```html
2020-02-05 13:13:48 +08:00
<div>
<n-button @click="theme = 'dark'">Dark Theme</n-button>
<n-button @click="theme = 'light'">Light Theme</n-button>
</div>
<n-config-provider :theme="theme" :theme-environment="env">
<n-card>
<n-config-consumer v-slot="{ themeEnvironment }">
<n-tag>{{ themeEnvironment }}</n-tag>
</n-config-consumer>
</n-card>
</n-config-provider>
2019-12-07 00:02:31 +08:00
```
```js
export default {
data () {
return {
theme: 'dark',
2019-12-07 00:02:31 +08:00
env: {
2020-02-05 13:13:48 +08:00
dark: 'NaCl',
light: 'Ionic Compound'
2019-12-07 00:02:31 +08:00
}
}
}
}
```
```css
.n-button {
2020-02-05 13:13:48 +08:00
margin: 0 8px 12px 0;
2019-12-07 00:02:31 +08:00
}
```