浅谈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 相关文章推荐
JavaScript解析URL参数示例代码
Aug 12 Javascript
DeviceOne 让你一见钟情的App快速开发平台
Feb 17 Javascript
JS获取url参数、主域名的方法实例分析
Aug 03 Javascript
JavaScript中的对象和原型(一)
Aug 12 Javascript
jQuery EasyUI tree 使用拖拽时遇到的错误小结
Oct 10 Javascript
JS实现按钮颜色切换效果
Sep 05 Javascript
在vue组件中使用axios的方法
Mar 16 Javascript
js实现点击展开隐藏效果(实例代码)
Sep 28 Javascript
微信小程序简单的canvas裁剪图片功能详解
Jul 12 Javascript
完美解决vue 中多个echarts图表自适应的问题
Jul 19 Javascript
vue 监听 Treeselect 选择项的改变操作
Aug 31 Javascript
JavaScript实现通讯录功能
Dec 27 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
phpmyadmin 访问被拒绝的真实原因
2009/06/15 PHP
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
yii实现级联下拉菜单的方法
2014/07/31 PHP
彻底搞懂PHP 变量结构体
2017/10/11 PHP
PHP进阶学习之垃圾回收机制详解
2019/06/18 PHP
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
2009/11/30 Javascript
浅谈javascript中的作用域
2012/04/07 Javascript
JS短路原理的应用示例 精简代码的途径
2013/12/13 Javascript
Javascript改变CSS样式(局部和全局)
2013/12/18 Javascript
JQuery调用绑定click事件的3种写法
2015/03/28 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
2016/07/06 Javascript
Jquery表单验证失败后不提交的解决方法
2016/10/18 Javascript
老生常谈jquery中detach()和remove()的区别
2017/03/02 Javascript
React Native react-navigation 导航使用详解
2017/12/01 Javascript
浅谈Node.js爬虫之网页请求模块
2018/01/11 Javascript
JavaScript函数、闭包、原型、面向对象学习笔记
2018/09/06 Javascript
多个vue子路由文件自动化合并的方法
2019/09/03 Javascript
基于Vue中使用节流Lodash throttle详解
2019/10/30 Javascript
Node登录权限验证token验证实现的方法示例
2020/05/25 Javascript
Python脚本实现自动发带图的微博
2016/04/27 Python
Python简单的制作图片验证码实例
2017/05/31 Python
基于Python socket的端口扫描程序实例代码
2018/02/09 Python
Python使用爬虫爬取静态网页图片的方法详解
2018/06/05 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
Python表达式的优先级详解
2020/02/18 Python
英国领先的电子、技术和办公用品购物网站:Ebuyer
2018/04/04 全球购物
杭州时比特电子有限公司SQL
2013/08/22 面试题
美丽乡村建设实施方案
2014/03/23 职场文书
工厂采购员岗位职责
2014/04/08 职场文书
活动倡议书范文
2014/05/13 职场文书
真诚的求职信
2014/07/04 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
2015年个人自我剖析材料
2014/12/29 职场文书
工会工作个人总结
2015/03/03 职场文书
宝宝满月祝酒词
2015/08/10 职场文书
驾驶员安全责任协议书
2016/03/22 职场文书