Vue: 为将代码库拆分为模块提供一流的支持

创建于 2017-07-04  ·  4评论  ·  资料来源: vuejs/vue

这个功能解决了什么问题?

来自 Angular 2 ,我真正怀念的功能之一是使用模块将我的代码库划分为逻辑单元。 从技术上讲,我仍然可以通过提供以下作为路由器组件在 Vue 中做到这一点:

import Vue from 'vue';
import { routes } from './routes';

export const LazyModule: Vue.ComponentOptions<Vue> = {
  render: r => {
    console.log('rendering');
    return r('router-view');
  },
  created: function() {
    this.$router.addRoutes(routes);
  }
};

这确实有效,但我认为如果 Vue 组件和模块之间有明确的分离,它会更直观。 具体来说,模块不会提供渲染方法。

提议的 API 是什么样的?

为此,这里有一些很好的工作。 我也一直在这里测试我之前的“模块”示例。

最终,我认为我们可以期待 Vue 中的一些基本支持,然后允许 Vue Router 和 Vuex 对其进行扩展。

最有用的评论

@patrickhousley ,你可以看看:
Vue 异步组件
Vue-router 延迟加载
Vuex 异步模块(尚未合并)

ssrpwa 的所有这些

所有4条评论

@patrickhousley ,您好,我没有使用 Angular 2 的经验,您能否尝试描述一下到底什么是模块以及它的示例用例是什么?

IMO,在像 Vue/React 这样的框架中,这个想法试图以Component方式思考(几乎)所有事情。 所以我更喜欢复合组件而不是Module

@jkzing看了更多之后,我同意了。 我想我真正要找的东西可以在这里处理。 老实说,我真的只是想要一种将我的应用程序干净利落地分成几部分的方法。 路由器已经可以做到这一点,但只能在组件级别。 路由仍然必须静态加载,这使得延迟加载大块应用程序有点问题。

@patrickhousley ,你可以看看:
Vue 异步组件
Vue-router 延迟加载
Vuex 异步模块(尚未合并)

ssrpwa 的所有这些

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

julianxhokaxhiu picture julianxhokaxhiu  ·  3评论

6pm picture 6pm  ·  3评论

wufeng87 picture wufeng87  ·  3评论

bdedardel picture bdedardel  ·  3评论

paulpflug picture paulpflug  ·  3评论