Question: I'm trying to write a code to do the following:

1. Using text-to-columns,the data should get divided in different columns.
The data in Cells A1-A8 is like this:

[![enter image description here](https://i.stack.imgur.com/uqIgn.png)](https://i.stack.imgur.com/uqIgn.png)

This data should appear in different columns.

Answer: 
When you log in or log out from child component, emit 'login' or 'logout' event respectively.

```
<template>
  <div id="app">
    <router-view name='login' @login="login=true"></router-view>
    <router-view name='header' @logout="login=false"></router-view>
    <keep-alive v-if="login">
      <router-view name='write'></router-view>
    </keep-alive>
    <router-view name='management'></router-view>
    <router-view name='account'></router-view>
    <router-view name='statistics'></router-view>
    <router-view name='view'></router-view>
    <router-view name='password'></router-view>
  </div>
</template>

<script>
export default {
  name: 'app',
  data () {
    return {
      login: true
    }
  }
}
</script>

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 0;
  height: 100%;
}
</style>

```
There is a pretty easy way to do this. Thanks to @loomchild for the link.

You can define on routes a `meta` object. Define it in such a way for routes using keep-alive that you want to invalidate.

```
    {
        path: '/invalidate_me',
        ...
        meta: {uuid: generateUUID()} // You'll need a method for this or something similar
    },

```

Check out [Create GUID / UUID in JavaScript?](https://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript) for help with UUID if need be.

Then, in your keep alive definition:

```
      <router-view :key="$route.path + ($route.params.id ? $route.params.id : '').toString() + ($route.meta && $route.meta.uuid ? $route.meta.uuid.toString() : '')"></router-view>

```

Something like that. If you don't include ids or don't want to cache by those, fine. Those are not related to the question, but something that I am using. So you really only need the `meta` part. We're basically telling Vue to consider a component to be defined by the combination of the id on the route (if it exists) and the uuid on the route (if it exists)

Then, when you want to invalidate inside a component, change the uuid. You may need to find the route in the lists on $router, or if you're already inside the correct component, you can do:

```
this.$route.meta.uuid = generateUUID();

```

This gets a new uuid and clears the cache.

Hope this helps someone else!