美文网首页VueVuevue
后台管理(2) ---- 目录划分以及基础功能编写(vue)

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

作者: 填完一个又一个 | 来源:发表于2020-01-08 18:56 被阅读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等等这些,在实际做项目的时候还会遇到很多可以单独拿出来的模块,基本思路就是按照功能划分,然后统一导出,方便实用。大家有哪些地方希望一起讨论的欢迎留言。

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/jzhsactx.html