vue-cli项目模板的一些思考
之前有个想法,就是要利用vue写一套ui。然后当时也没有搞清楚到底怎么写。
几经周转吧,通过付费的方式在gitbook上面找到了答案。
找到答案之后再看我们正在开发的项目,看伙伴写的代码,突然发现完全可以按照写ui组件库的方式调整目录结构。于是动手了,于是新的目录结构。
最重要的是终于从实际层面开始向上思考代码设计,思考架构设计。在我看来目录就是一种架构。
思考后的心得吧算是。
一,就vue脚手架来说,自动生成的项目模板是有改进或者根据实际需要作出重新设计的。重新设计的后要能够有更合适的扩展性。
比如组件化的扩展性,尤其全局组件,经过合理的重新安排目录,可以让全局组件发展成为组件库。然后全局的vue特殊属性,比如过滤器、指令等等也可以单独拿出开使用。
二,一些依赖性质的方法可以放在util里面,利用vue的原型和扩展方法intall,将方法挂在原型上面。
三,局部组件,局部指令,局部过滤器则单独放在页面内部或者组件内部。
四,生产环境下的一些依赖是可以全部使用dll进行打包压缩管理的,这样可以大大减少开发环境时候的内存需要
五,关于混入,混入是另一种形式重复解决方案
六,组件、混入、指令、过滤器、方法构成了可重复单元,vue原型上的方法不能出现在指令或者过滤器中。
一个优秀的项目模板是值得做一个专门的脚手架管理的,毕竟这是努力思考和日积月累的工作才得到的。
也是解决复杂问题的一个思路。有规则拆解。
转载于:https://www.cnblogs.com/zhensg123/p/11587403.html
vue-cli项目模板的一些思考相关推荐
- vue cli 项目在打包时候报错 API fatal error handler returned after process out of memory
问题描述 vue cli 项目在打包时候报错:API fatal error handler returned after process out of memory. 问题分析 从给出的提示可以看出 ...
- Vue Cli 项目结构简述
webnode_modules --Vue Cli 项目以来的js模块全放到这里public --存放静态资源 存放自己的js cssfavicon.ico -- 浏览器小图标index.html - ...
- Vue项目9:Vue Cli项目使用echarts可视化
Vue Cli项目使用echarts可视化有两种方式:一.直接引入echarts 二.使用vue-ehcarts. 一.直接引入echarts 1.创建Vue Cli项目 进入cmd命令行,输入如 ...
- vue cli项目升级--vue cli3升级到vue cli4
原文网址:vue cli项目升级--vue cli3升级到vue cli4_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍如何升级vue项目的vue cli版本. 官方网址 https://c ...
- Vue Cli项目使用PDF.js预览pdf无法访问到viewer.html
今天在开发移动端项目中有个需求是手机端预览pdf,ios可以直接在浏览器预览,安卓不行,所以使用pdf.js来解决,之前项目用过该插件很好用,但是今天使用的时候发现根本没有访问到viewer.html ...
- 安装Vue CLI项目(Vue2.0)
一.Vue CLI脚手架(Vue2.0) Vue CLI官方文档:官方文档 1.什么是脚手架 命令行界面(英语:command-line interface,缩写:CLI)是在图形用户界面得到普及 ...
- todomvc html css模板,[超详细] vue入门项目 TodoMVC 实现和思考
如果对你有帮助希望可以点个 star 哦 ~ 一.项目初始化 1.下载模板 在存放该项目的目录下执行: git clone https://github.com/tastejs/todomvc-app ...
- vue cli 项目在打包时候报错解决方法
问题描述 报错一: 打包过程报错:Unexpected token name <i>, expected punc <;> IE浏览中报错:SCRIPT1003: 缺少':', ...
- Vue cli项目,使用富文本编辑器WangEditor,8小时摸爬滚打后,弃坑Tinymce、UEditor、Quill
一共尝试了 Tinymce.UEditor.Quill等好几种编辑器,最终觉得最满意的是 WangEditor. 1.Tinymce 开源项目ElementAdmin自带的例子,图片上传 竟然存的是 ...
最新文章
- linux arpwatch 命令详解
- ASP.NET AJAX文档-ASP.NET AJAX 概述[翻译](1)
- SAP Spartacus layoutSlots ID 和 CMSComponent 的映射关系
- 【心情】最近实在是太忙了,没有心情写东西!
- 如何根据接口写一个客户端进行发单测试?
- 实现WinForm窗体的美化(借助第三方控件)
- 领域驱动设计 (DDD)实例分析
- 来了!iPhone 12今晚天猫首销:12期分期免息,还送5G流量包
- wxpython 优秀的界面_好用的 wxPython 界面設計工具 — wxFormBuilder
- 铜川市2021年高考成绩查询,2021年铜川高考各高中成绩排名查询,铜川高考成绩公布榜单...
- 帆软报表-打印sql日志设置
- html网页老是崩溃,MSHTML.dll 错误模块导致ie9最近经常崩溃
- 你要的Chrome插件都在这里了
- 工控计算机+isa接口,研华工控机IPC-610系列可提供多个PCI、ISA总线
- 2018/7/18 HDU 5294 Tricks Device 最短路建图+最小割 训练日记2
- [Java] 编码规范与基本概念
- 将本地视频上传到云端_如何将本地文件上传到新浪云服务器应用
- 利用FDTD进行超表面的仿真(一)——验证PB相位和转换效率的计算
- 测试手机单核性能软件,跑分软件Geekbench公布“作弊”名单:华为6款手机上榜...
- 最早的计算机网络游戏,手机网络游戏早期发展史——图文游戏
热门文章
- ARM(IMX6U)裸机C语言蜂鸣器驱动实验(BSP+SDK)
- xampp mysql 备份_Linux Xampp计划任务自动备份Mysql数据库和所有网站
- python 银行工作_Python:银行系统实战(一)
- java中的HashSet内部是如何工作的
- Rocketmq集群工作流程
- php标签调用,phpcms栏目标签调用代码大全
- MIUI 13:带来全新小部件,新增三大隐私保护功能等
- 在程序员面前千万不要说这9句话,我一个同事就死的很惨!
- 安卓logcat工具apk_backdoorapk 安卓APK后门捆绑脚本
- 分组查询最晚一条数据(ORACLE)