浅谈vue-props的default写不写有什么区别


Posted in Javascript onAugust 09, 2020

注意 default 不要写成 defaults

例如有一个名为mk-test的组件如下:

<template>
  <div>{{maxLength}}</div>
</template>
<script>
export default {
  props: {
    maxLength: {
      type: Number,
      default: 1
    }
  }
}
</script>

当父组件这样调用时:

<mk-test></mk-test>

渲染出来是:

1

如果把组件的default:1删除,父组件调用方式不变,此时渲染结果是:

0

此时如果父组件改成:

<mk-test maxLength="3"></mk-test>

此时渲染结果是:

3

自我总结:

1、使用default定义默认值时,如果父组件有传值,则用父值渲染。如果父组件没有传值,则使用默认值。

2、没有定义默认值时,如果父组件有传值,则用父值渲染。如果父组件没有传值,则使用的是该类型的默认值。类型及其默认值如下:

String ''

Number 0

Array []

Object {}

补充知识:Vue.js中的 new Vue() 和 export default {}区别

在生成、导出、导入、使用 Vue 组件的时候,常常被位于不同文件的 new Vue() 和 export default{} 。

首先,Vue 是什么? po 主的理解是 Vue 就是一个构造函数,生成的实例是一个巨大的对象,可以包含数据、模板、挂载元素、方法、生命周期钩子等选项。

所以渲染的时候,可以使用构造 Vue 实例的方式来渲染相应的 html 页面:

new Vue({
  el: '#app'
  ...
})

那么 export default {} 又是?

在复用组件的时候用到的。

假设我们写了一个单页面组件 A 文件,而在另一个文件 B 里面需要用到它,那么就要用ES6 的 import/export 语法 ,在文件 A 中定义输出接口 export **,在文件 B 中引入 import **,然后再生成一个 Vue 实例 new Vue (**),把引入的组件用起来,这样就可以复用组件 A 去配合文件 B 生成 html 页面了。

所以在复用组件的时候,export 和 new Vue 缺一不可。

以上这篇浅谈vue-props的default写不写有什么区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
如何使用Jquery获取Form表单中被选中的radio值
Aug 09 Javascript
使用js dom和jquery分别实现简单增删改
Sep 11 Javascript
PHP PDO操作总结
Nov 17 Javascript
jquery实现Li滚动时滚动条自动添加样式的方法
Aug 10 Javascript
JavaScript的代码编写格式规范指南
Dec 07 Javascript
值得分享的Bootstrap Ace模板实现菜单和Tab页效果
Dec 30 Javascript
Jquery-data的三种用法
Apr 18 jQuery
JS按条件 serialize() 对应标签的使用方法
Jul 24 Javascript
Vue自定义指令使用方法详解
Aug 21 Javascript
Angular整合zTree的示例代码
Jan 24 Javascript
vue指令只能输入正数并且只能输入一个小数点的方法
Jun 08 Javascript
javascript设计模式 ? 备忘录模式原理与用法实例分析
Apr 21 Javascript
js实现带有动画的返回顶部
Aug 09 #Javascript
Vue将props值实时传递 并可修改的操作
Aug 09 #Javascript
js实现轮播图效果 纯js实现图片自动切换
Aug 09 #Javascript
vue 子组件watch监听不到prop的解决
Aug 09 #Javascript
vue 重塑数组之修改数组指定index的值操作
Aug 09 #Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
Aug 09 #Javascript
bootstrap实现tab选项卡切换
Aug 09 #Javascript
You might like
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
golang 调用 php7详解及实例
2017/01/04 PHP
PHP simplexml_load_string()函数实例讲解
2019/02/03 PHP
PHP设计模式之PHP迭代器模式讲解
2019/03/22 PHP
利用js跨页面保存变量做菜单的方法
2008/01/17 Javascript
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
深入理解JavaScript系列(14) 作用域链介绍(Scope Chain)
2012/04/12 Javascript
javascript时区函数介绍
2012/09/14 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
JSCode all of Brower 全局屏蔽网页右键功能 具体实现
2013/06/05 Javascript
跟我学习javascript的隐式强制转换
2015/11/16 Javascript
jstl中判断list中是否包含某个值的简单方法
2016/10/14 Javascript
jQuery插件jsonview展示json数据
2018/05/26 jQuery
vue elementUI 表单校验的实现代码(多层嵌套)
2019/11/06 Javascript
Vue微信公众号网页分享的示例代码
2020/05/28 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
Python比较文件夹比另一同名文件夹多出的文件并复制出来的方法
2015/03/05 Python
python回溯法实现数组全排列输出实例分析
2015/03/17 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
用Python写一个自动木马程序
2019/09/17 Python
解决Python中回文数和质数的问题
2019/11/24 Python
使用Python+selenium实现第一个自动化测试脚本
2020/03/17 Python
Speedo速比涛德国官方网站:世界领先的泳装品牌
2019/08/26 全球购物
外科实习自我鉴定
2013/10/06 职场文书
网站设计师的岗位职责
2013/11/21 职场文书
新护士岗前培训制度
2014/02/02 职场文书
运动会稿件50字
2014/02/17 职场文书
我的梦想演讲稿1000字
2014/08/21 职场文书
党员教师个人对照检查材料范文
2014/09/25 职场文书
2014民事授权委托书范本
2014/09/29 职场文书
信贷客户经理岗位职责
2015/04/09 职场文书
2015年计划生育责任书
2015/05/08 职场文书
2015年测量员工作总结
2015/05/23 职场文书
中国文明网2015年“向国旗敬礼”活动网上签名寄语
2015/09/24 职场文书
法制教育讲座心得体会
2016/01/14 职场文书
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python