欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Vue.js第四天学习笔记(组件)

程序员文章站 2022-05-30 08:00:56
在这篇文章之前小颖分享过小颖自己写的组件:vue.js组件tabs实现选项卡切换效果和tree升级版(实现省市多级联动) 先给大家看下小颖写了一个简单的组件示例: 组件...

在这篇文章之前小颖分享过小颖自己写的组件:vue.js组件tabs实现选项卡切换效果tree升级版(实现省市多级联动)

先给大家看下小颖写了一个简单的组件示例:

组件:

<template>
<div class='content' v-if='showflag'>
<input type="text" v-bind:style='{ width:compwidth+"px"}' v-model='compvalue' @keyup='myfun' v-el:getvalue>
<label class='example-label'>观察参数"compvalue"的变化:</label>{{compvalue}}
<button class='btn btn-danger' @click='compfun'>确定</button>
</div>
</template>
<script>
export default {
 // 从父组件接收收据
 props:{
 compvalue:{
  type:string,//类型(原生构造器:string, number, boolean, function, object, array),如果绑定类型不对将抛出一条警告
  required: true, //是否是必须项
  twoway:true,//指定这个 prop 为双向绑定,如果没有 'sync' 将抛出一条警告
  default:'',//默认值
 },
 compwidth:{
  coerce: function (val) {
  return val + '' // 将值转换为字符串
  }
 },
 compfun:{
  type:function,
  required:true
 }
 },
 ready: function() {},
 computed:{},//计算属性
 methods: {//组件自身的方法
 myfun:function(){
  alert( this.$els.getvalue.value);
 }
 },
 data() {//绑定数据
 return {
  showflag:true,
 }
 }
}
</script>

调用组件:

<template>
<div class='example-content'>
<compexample :compvalue.sync='values' :compfun='compfun'></compexample>
</div>
</template>
<script>
import compexample from './componentexample.vue'//引入组件
export default {
 components: {
 compexample
 },
 ready: function() {
 },
 methods: {
 compfun:function(){
  alert('喵嘞个咪');
 }
 },
 data() {
 return {
  values:'hello'
 }
 }
}
</script>

在小颖写的组件中,小颖把创建组件时,组件的大部分属性都加了相应注释,大家看了要是还有什么疑问,可以留言哦.

下面看写调用组件后的效果图吧:

Vue.js第四天学习笔记(组件)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。