| Server IP : 185.208.173.17 / Your IP : 87.236.161.98 Web Server : Microsoft-IIS/10.0 System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64 User : IUSR ( 0) PHP Version : 7.4.13 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/inetpub/wwwroot/parsmega.nuxt/node_modules/vue-client-only/ |
Upload File : |
# vue-client-only
[](https://npmjs.com/package/vue-client-only) [](https://npmjs.com/package/vue-client-only) [](https://circleci.com/gh/egoist/vue-client-only/tree/master) [](https://github.com/egoist/donate)
## Install
```bash
yarn add vue-client-only
```
> __This project is previously known as *vue-no-ssr*, switch to [1.x](https://github.com/egoist/vue-client-only/tree/1.x) branch for the old docs.__
## Usage
```vue
<template>
<div id="app">
<h1>My Website</h1>
<client-only>
<!-- this component will only be rendered on client-side -->
<comments />
</client-only>
</div>
</template>
<script>
import ClientOnly from 'vue-client-only'
export default {
components: {
ClientOnly
}
}
</script>
```
### Placeholder
Use a slot or text as placeholder until `<client-only />` is mounted on client-side.
eg, show a loading indicator.
```vue
<template>
<div id="app">
<h1>My Website</h1>
<!-- use slot -->
<client-only>
<comments />
<comments-placeholder slot="placeholder" />
</client-only>
<!-- or use text -->
<client-only placeholder="Loading...">
<comments />
</client-only>
</div>
</template>
<script>
import ClientOnly from 'vue-client-only'
export default {
components: {
ClientOnly
}
}
</script>
```
By default the placeholder will be wrapped in a `div` tag, however you can use `placeholderTag` prop to customize it:
```vue
<client-only placeholder="loading" placeholder-tag="span">
<comments />
</client-only>
```
And you get:
```html
<span class="client-only-placeholder">
loading
</span>
```
If prop `placeholder` is an empty string (or `null`) and no `placeholder`
slot is found, then `<client-only>` will render the Vue placeholder element `<!---->`
instead of rendering the `placholder-tag` during SSR render.
## Development
```bash
yarn install
# Run example
yarn example
```
## Contributing
1. Fork it!
2. Create your feature branch: `git checkout -b my-new-feature`
3. Commit your changes: `git commit -am 'Add some feature'`
4. Push to the branch: `git push origin my-new-feature`
5. Submit a pull request :D
## Author
**vue-client-only** © [egoist](https://github.com/egoist), Released under the [MIT](./LICENSE) License.<br>
Authored and maintained by egoist with help from contributors ([list](https://github.com/egoist/vue-client-only/contributors)).
> [egoist.moe](https://egoist.moe) · GitHub [@egoist](https://github.com/egoist) · Twitter [@_egoistlily](https://twitter.com/_egoistlily)