ES6模块:代码执行"气味"与出口

时间:2017-11-12 07:31:11

标签: javascript vuejs2

我不是任何一个使用JavaScript的向导,而且我一直在围绕着大量使用ES6的Vue.js。在查看如何实现vue-router时,模块声明如下所示:

def signup(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            # process the data in form.cleaned_data as required
            # ...
            # redirect to a new URL:
            return redirect('login.html')
    else:
        form = UserCreationForm()
    return render(request, 'templates/signup_form.html', {'form': form})

其中main.js有一个"导入路由器来自' ./ router'"指向我的/router/index.js,然后添加这个"路由器"实例到Vue实例:

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'
import TestComponent from '@/components/TestComponent'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'Hello',
      component: HelloWorld
    },
    {
      path: '/test',
      name: 'Test',
      component: TestComponent
    }
  ]
})

现在,我在某种程度上都明白了。我在/ rounter中的index.js导出一个新的"路由器"从vue-router,用指定的路由初始化它。我不完全理解的一点,似乎是一个气味是" Vue.use(路由器)"在导出器上方的此路由器的index.js文件中。根据我的看法,当基于"路由器:路由器"初始化Vue实例时,将执行./router/index.js中的代码。分配

我的问题是这是否是一个适当的"放Vue.use的地方?我问的原因是因为我也想使用vue-intl进行本地化和i18n。要做到这一点,我需要在导入后使用Vue.use(VueIntl),但是我还需要为各种支持的语言注册消息。可执行代码是否应该驻留在任何有效范围之外的组件中? (看起来很臭,但只是想知道这是否正常?)

0 个答案:

没有答案