Vuejs:我应该在 vue-router SPA 中的什么地方放置一些常见的 js util?

Vuejs: where should I place some common js util in a vue-router SPA?

在我的 Vuejs 项目中,我有一些常用的 js 函数可以通过多个组件使用:

我的代码结构如下,在http://vuejs.github.io/vuex/en/structure.html中有介绍:

├── index.html
├── main.js
├── components
│   ├── App.vue
│   └── ...
└── vuex
    ├── store.js     # exports the store (with initial state and mutations)
    └── actions.js   # exports all actions

some_component.vue

<template>
// The page content
</template>

<script>
export default {
    attached: function() {
        if(!isLoggedIn) {
            $this.router.go('/signin');
        }
    }
}
</script>

在这种情况下,我想创建一个函数 loginRequired,它将在多个组件中调用。

那么代码应该怎么组织呢?

这是我的选择

├── index.html
└── src
    ├── main.js
    ├── config.js        # Here I define global constants like a base url for vue-resource
    ├── api              # here is all the http calls using Vue.resource
    │   ├── index.js
    │   └── resource.js  # here I define interceptors, for errors log, auth, etc
    ├── components
    │   ├── utils        # Here I define common functions for components
    │   ├── App.vue
    │   └── ...
    └── vuex
        ├── store.js     # exports the store (with initial state and mutations)
        └── actions.js   # exports all actions

所以根据我的文件结构,你想要的应该在 src/components/utils 文件夹中,至少它使用了一些 http 调用,在那种情况下,它应该是 [=12= 的一部分] api文件夹。在这种情况下,路由在 main.js 文件中,有些人更喜欢在 src 文件夹中有一个专用文件 routes.js,这取决于你