VueVuevue

后台管理(2) ---- 目录划分以及基础功能编写(vue)

2020-01-08  本文已影响0人  填完一个又一个

每个项目在最开始搭建的时候都需要划分若干个模块,确认项目规范,下面就让我们来讨论一下项目中如何划分模块。

本文还是基于vue-cli,代码GitHub - wangkai123456/learnVueAdmin at v2

大体思路

当拿到一个项目的时候我们首先要去想,我们会用到哪些东西,比如element-ui、vuex等等,还会用到vue本身的一些功能比如组件化、过滤器等等这些,所以我们基于我们用到的这些东西划分出来不同的模块。

组件模块

在做项目的时候我们可能会需要若干的组件,我们通常会把组件放到一个统一的目录(src/components)里面统一管理,然后会把组件注册成全局组件。然后在main(入口文件)引入。在使用的时候就不需要引入在注册组件,直接使用即可。

组件名一般与name一致

组件

在index里面统一注册成全局组件,这里使用的语法不做过多解释,主要理解划分思路。

统一注册全局组件

使用

需要插件的页面

插件模块

我们项目中会引入若干大大小小的第三方插件比如element-ui、富文本、地图等等,通常这些会直接main.js(项目入口文件)文件直接引入这样的话会导致main文件异常的臃肿,所以我们会编写一个插件模块,来统一导出我们用到的插件,然后在main文件直接引入。在src目录下新建plugins目录,然后根据现有的插件分别创建几个文件比如element-ui 就创建一个element-ui文件

src/plugins/element-ui

统一导出所有插件

导出插件

过滤器模块

项目中可能会有时间戳转换成时间或者百分位加逗号等,这类需求大多都是通过过滤器来完成,所以我们需要一个过滤器模块,在src目录下新建一个filters目录,每个过滤器就是一个文件,然后在index里面统一注册成全局过滤器,最后在main(入口文件)引入。下面以时间过滤器为例

编写时间过滤器(可能有点乱😢,主要看思路)

时间过滤器

在index里面统一注册,使用的时候,不需要引入和注册

过滤器统一编辑

通用方法模块

项目中会有一些通用的逻辑可能很多个文件都需要,所以我们把那些通用方法都放到一个目录下,然后配置一下webpack的配置在需要的页面引入使用。在src目录下新建utils目录,根据不同的功能编写不同的文件然后统一导出,下面以分页方法为例

编写分页功能

分页功能

index 文件统一导出

统一导出通用方法

由于我们会在不同的文件里经常使用这些通用方法,所以我们在webpack里面配置一个通用的路径

配置路径

页面使用

引入使用即可

API(网络请求)模块

我们把所有的网络请求按照功能分模块分别放在src下的api目录下,比如登录功能属于Account模块,那么我们就在api目录下新建Account文件,然后在index里统一导出。

Account文件

Account文件

index文件统一导出api,然后我们想配置utils的路径一样配置一下api 的路径。api模块里面的函数,使用和utils一致

index统一导出api

统一在main(入口文件)引入


总结

以上就是一些项目的基础配置,当然还有很多没有拿出来讨论,比如路由,vuex等等这些,在实际做项目的时候还会遇到很多可以单独拿出来的模块,基本思路就是按照功能划分,然后统一导出,方便实用。大家有哪些地方希望一起讨论的欢迎留言。

上一篇下一篇

猜你喜欢

热点阅读