Vue速成day04--组件详解

组件

1、概念:组件是可复用的 Vue 实例,所以它们与 new Vue 接收相同的选项,例如 data、computed、watch、methods 以及生命周期钩子等。仅有的例外是像 el 这样根实例特有的选项。
2、定义方式

  // 全局定义 所有vue实例都可以调用该组件
  Vue.component('one',{
    template:`<div>
      <h1>我是one的题目</h1>
      <p>我是one的内容</p>
    </div>`
  })

  new Vue({
    el:'#app',
    // 局部定义 只有当前vue实例才可以调用该组件
    components:{
      hello:{
        template:'<h3>哈哈哈,我是一个局部组件</h3>'
      }
    }
  })

3、组件命名

  1、不能以已经存在的标签命名。eg:div span a b em
  2、也不能以已经存在的标签大写命名。eg:DIV SPAN A B EM
  3、如果组件名称中有大写字母,调用的时候要改成-小写。   烤串写法
  4、当首字母就是大写的时候,那么就直接改成小写
  5、推荐组件名称中至少包含一个大写字母。eg:webNav  webBanner

template

    1、如果定义了template选项,那么就不会加#app里面的内容,而是将template中的内容直接渲染到页面中
    2、在template中最外层只能有一个根标签
    3、我们可以借助template标签来定义,template标签仅仅是一个模板占位符,并不会展示在页面中
    4、在写template的时候,不要考虑其他的,就考虑正常在页面中怎么写,那么在template中就怎么写

data

    data是一个返回对象的函数,这样设计的目的是因为,组件是为了重复调用,但数据又要互相隔离。如果定义成一个对象的话,就会一变全变,所以得定义一个函数,封闭空间。实现了展示的效果一样,但数据又互相不影响。

脚手架安装

// 全局安装webpack
npm i webpack -g
// 全局安装vue脚手架
npm i vue-cli -g
// 创建项目
vue init webpack demo
// 进入项目
cd demo
// 启动项目
npm run dev

脚手架文件夹

-demo                     项目文件夹
 -build                   打包配置
 -config                  启动项目的配置项
 -dist                    打包以后的文件
 -node_modules            依赖包
 _static                  静态资源 img rem.js reset.css
  .babelrc                es6->es5
  .editorconfig           编辑器配置
  .gigignore              不用上传到github的代码
  .postcssrc.js           处理css兼容
  index.html              页面
  package.json            启动命令   打包命令     依赖包
  README.md               说明
 _src       

启动命令npm run dev
打包命令npm run build

脚手架中组件定义

//全局组件(在main.js中)
import vNews from "路径"
Vue.component("组件名",vNews)

//局部组件(在各自的组件中)
import vChild from "路径"
export default{
    components:{
        vChild
    }
}

面试题

1、组件中的data为什么必须是函数?
2、vue-cli中怎样定义和使用组件?
3、列举vue-cli项目目录中文件夹和文件的用法?

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352

推荐阅读更多精彩内容