项目地址:http://pan.baidu.com/s/1qYIxCXu

很久没有写博客的原因的是之前一直在解决一个问题,这个问题就是:我们在写组件的时候,官方推荐把css写在组件里面,但是如果我们写在把css写在组件里面的话最终打包的时候,会把组件里面的css打包到页面上,但是这样很不雅观,幸好ExtractTextPlugin提供一个功能可以把vue组件里面的css打包到具体的业务css里面,但是这样会产生一个问题,如果有一个组件我们每一个页面都会用到,那这个组件里面的css最终会被打包到每一个页面的css里面,但是我们希望的是如果这个组件每一个页面都会用到,这个组件里面的css最好可以打包到base.css里面,这样可以很好的利用页面缓存技术,

所以之前一直在解决这个问题,但是一直没有好的解决方案,最终找了一个折衷的方案,就是我们在编写组件的时候,如果这个组件是给单个页面使用的那么他的css可以写在组件里面,如果这个组件是通用的,那么我们会把他的css写在base.css里面。之所以介绍这些,是因为下面我在介绍组件的时候,都是通用组件,而你会看到我的通用组件里面并没有写css,这些css都在base.css里面,你可以根据组件名在base.css搜索到对应组件的css,而且新项目是基于bootstrap3做的,所以某一些特定组件需要您引用bootstrap3.css

下面介绍第一个组件:就是后台管理中心的菜单组件,这个组件主要包含以下功能:1:响应式 2:根据菜单数据来展示菜单(支持多层级)3:附加一个消息列表

使用:下载下来项目后找到component文件夹;其中navigation.vue,menuTree.vue,menuTreeItem.vue,navTree.vue,navTreeItem.vue就是我们的菜单组件了,menuTree.vue,menuTreeItem.vue表示左侧菜单,navTree.vue,navTreeItem.vue表示导航栏选项。我们在使用的时候直接引入navigation.vue就好了,然后在页面里使用<navigation></navigation>就可以显示,因为这是一个demo所以数据暂时是写死的,你可以在menuTree.vue里面找到配置菜单数据的选项,你可以在navTree.vue里面找到配置导航栏选项的数据,最后运行的时候不要忘记引入bootstrap的css和字体,以及base.css对应的部分

新项目的vue组件的更多相关文章

  1. 新项目的CQRS设计

    刚换了个工作,闲话不说了.前两天开始一个新项目,大概是一个任务管理系统,由使用者来选取任务,执行任务,反馈完成,我大概做了些设计,本来是打算看能不能在新公司铺垫一下DDD,不过后来这块功能没分到我这, ...

  2. java新项目的eclipse统一配置记录

    1.new java file的模版 /** * @Title:${file_name} * @Copyright: Copyright (c) 2016 * @Description: * < ...

  3. 做一个创建cocos2d-x新项目的shell脚本

    1. 进入console目录 cd /Users/apple/Documents/MyArchitecture/Cocos2d-x/Framework/cocos2d-x-3.4/tools/coco ...

  4. Laravel 项目中编写第一个 Vue 组件

    和 CSS 框架一样,Laravel 不强制你使用什么 JavaScript 客户端框架,但是开箱对 Vue.js 提供了良好的支持,如果你更熟悉 React 的话,也可以将默认的脚手架代码替换成 R ...

  5. 使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development、production)

    使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development.production) --mode 指定环境模式 ...

  6. webstorm如何调试vue项目的js

    webstorm如何调试vue项目的js webstormvuewebstorm调试jsjs 1.编辑调试配置,新建JavaScript调试配置,并设置要访问的url地址,如下图所示: 在URL处填写 ...

  7. Vue组件v-if新渲染的组件不更新

    Vue组件v-if新渲染的组件不更新:可能原因是Vue识别到是相似组件(高度相似甚至相同)不会更新元素.给原来的组件和新组件分别给不同的key值让Vue识别为不同的组件.

  8. day 83 Vue学习三之vue组件

    本节目录 一 什么是组件 二 v-model双向数据绑定 三 组件基础 四 父子组件传值 五 平行组件传值 六 xxx 七 xxx 八 xxx 一 什么是组件 首先给大家介绍一下组件(componen ...

  9. Vue 组件设计

    Vue 组件设计 Vue 作为 MVVM 框架一员,不管是写业务还是基础服务,都少不了书写组件.本文总结一下书写业务组件的一些心得. 为什么要写组件? 我们知道,只要是组件,就需要在引用的时候与 vi ...

随机推荐

  1. c++map用法

    #include<iostream> #include<algorithm> #include<map> using namespace std; void fun ...

  2. Python3 tkinter基础 Button command 单击按钮 在console中打印文本

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. tp框架中的一些疑点知识-7

    mysqli是用面向对象的,所以用箭头对象语法, 而mysql是用C语言面向过程写的, 所以用的都是php全局函数 式的写法. tinkle: 叮叮当当的响; (口语)一次电话, i will giv ...

  4. 再谈fedora23下Virutalbox的安装. --问题的关键在于 安装kernel-devel包

    首先, 要使用 virutalbox的 rpm 安装包 进行安装. 在安装的过程中, 如果提示 有一些包, 没有, dependencies not resolved, 比如libQt..libvpx ...

  5. bozoj3131: [Sdoi2013]淘金 数位dp

    链接 https://www.lydsy.com/JudgeOnline/problem.php?id=3131 思路 1. 函数值的素因子只有2.3.5.7 由他们组成的状态不多,爆搜的时候即使搜不 ...

  6. (转)Redis & EhCache

    (二期)6.redis与ehcache综合讲解 [课程六]ehcache简介.xmind0.1MB [课程六]redis的高可用.xmind0.1MB [课程六]redis的...结构.xmind0. ...

  7. Deep Learning framework --- MexNet 安装,测试,以及相关问题总结

    Deep Learning framework --- MexNet 安装,测试,以及相关问题总结  一.安装:   参考博文:http://www.open-open.com/lib/view/op ...

  8. [JavaScript] - js

    原题 var countSheep = function (num){ //your code here var str = ' sheep...'; var result = ''; for (va ...

  9. 使用路由传参时,query与params的区别!

    query 1:参数会在地址栏显示 2:参数不需要在路由的path后接:args1/:args2 3:获取参数用this.$route.query.args1 params 1:参数需要在路由的pat ...

  10. Google advertiser api开发概述——最佳做法&建议

    最佳做法 本指南介绍了一些最佳做法,您可以运用它们来优化 AdWords API 应用的效率和性能. 日常维护 为确保您的应用不间断运行,可采取以下做法: 确保 AdWords API 中心中的开发者 ...