Vue props 单向数据流的实现


Posted in Javascript onNovember 06, 2018

1、props通信

注意:DOM模板的驼峰命名props要转为短横分割命名。

<!DOCTYPE html>
<html lang="zh">

  <head>
    <meta charset="UTF-8" />
    <title>Vue</title>
  </head>

  <body>
    <div id="app">
      <my-component message='来自父组件的数据' warning-text="提示信息"></my-component>

    </div>
    <script src="https://cdn.bootcss.com/vue/2.5.9/vue.min.js"></script>
    <script type="text/javascript">
      Vue.component('my-component', {
        template: '<div>{{warningText}}:{{message}}</div>',
        props: ['message', 'warningText']
      })
      new Vue({
        el: "#app"
      })
    </script>
  </body>

</html>

传递动态数据(v-bind):

<!DOCTYPE html>
<html lang="zh">

  <head>
    <meta charset="UTF-8" />
    <title>Vue</title>
  </head>

  <body>
    <div id="app">
      <input type="text" v-model="parentMessage" />
      <my-component :message='parentMessage'></my-component>

    </div>
    <script src="https://cdn.bootcss.com/vue/2.5.9/vue.min.js"></script>
    <script type="text/javascript">
      Vue.component('my-component', {
        template: '<div>{{message}}</div>',
        props: ['message']
      })
      new Vue({
        el: "#app",
        data: {
          parentMessage: ''
        }//前端全栈开发交流群:
      })//866109638
    </script>//帮助1-3年工作人员
  </body>//突破技术瓶颈,提升思维能力

</html>

2、单向数据流

(1)子组件保存父组件传递过来的值,在子组件自己的作用域下修改和使用。

<!DOCTYPE html>
<html lang="zh">

  <head>
    <meta charset="UTF-8" />
    <title>Vue</title>
  </head>

  <body>
    <div id="app">

      <my-component :init-count='1'></my-component>

    </div>
    <script src="https://cdn.bootcss.com/vue/2.5.9/vue.min.js"></script>
    <script type="text/javascript">
      Vue.component('my-component', {
        template: '<div>{{initCount}}</div>',
        props: ['initCount'],
        data: function() {
          return this.initCount
        }
      })
      new Vue({
        el: "#app"
      })
    </script>
  </body>

</html>

(2)使用计算属性

<!DOCTYPE html>
<html lang="zh">

  <head>
    <meta charset="UTF-8" />
    <title>Vue</title>
  </head>//前端全栈交流学习圈:
//866109386,帮助1-3年前端人员
  <body>//突破技术瓶颈,提升思维能力
    <div id="app">

      <my-component :width='100'></my-component>

    </div>
    <script src="https://cdn.bootcss.com/vue/2.5.9/vue.min.js"></script>
    <script type="text/javascript">
      Vue.component('my-component', {
        template: '<div :style="style">组件内容</div>',
        props: ['width'],
        computed: {
          style: function() {
            return {
              width: this.width + 'px'
            }
          }
        }
      })
      new Vue({
        el: "#app"
      })
    </script>
  </body>

</html>

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

Javascript 相关文章推荐
在网页中屏蔽快捷键
Sep 06 Javascript
javascript中普通函数的使用介绍
Dec 19 Javascript
JS使用getComputedStyle()方法获取CSS属性值
Apr 23 Javascript
加随机数引入脚本不让浏览器读取缓存
Sep 04 Javascript
json格式的javascript对象用法分析
Jul 04 Javascript
js鼠标按键事件和键盘按键事件用法实例汇总
Oct 03 Javascript
JS声明式函数与赋值式函数实例分析
Dec 13 Javascript
jquery插件canvaspercent.js实现百分比圆饼效果
Jul 18 jQuery
创建echart多个联动的示例代码
Nov 23 Javascript
vue+elementui 对话框取消 表单验证重置示例
Oct 29 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
Dec 02 Javascript
Node 使用express-http-proxy 做api网关的实现
Oct 15 Javascript
给localStorage设置一个过期时间的方法分享
Nov 06 #Javascript
移动端H5页面返回并刷新页面(BFcache)的方法
Nov 06 #Javascript
学习使用ExpressJS 4.0中的新Router的用法
Nov 06 #Javascript
vue项目上传Github预览的实现示例
Nov 06 #Javascript
React Component存在的几种形式详解
Nov 06 #Javascript
支付宝小程序tabbar底部导航
Nov 06 #Javascript
利用JavaScript缓存远程窃取Wi-Fi密码的思路详解
Nov 05 #Javascript
You might like
要会喝咖啡也要会知道咖啡豆
2021/03/03 咖啡文化
PHP 日志缩略名的创建函数代码
2010/05/26 PHP
xml 封装与解析(javascript和C#中)
2009/07/26 Javascript
jQuery.Autocomplete实现自动完成功能(详解)
2010/07/13 Javascript
boxy基于jquery的弹出层对话框插件扩展应用 弹出层选择器
2010/11/21 Javascript
JQuery slideshow的一个小问题(如何发现及解决过程)
2013/02/06 Javascript
js判断两个日期是否相等的方法
2013/09/10 Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
2013/11/23 Javascript
JS实现控制表格内指定单元格内容对齐的方法
2015/03/30 Javascript
JS实现带缓冲效果打开、关闭、移动一个层的方法
2015/05/09 Javascript
javascript三种代码注释方法
2016/06/02 Javascript
JS中type=&quot;button&quot;和type=&quot;submit&quot;的区别
2017/07/04 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(下)
2018/04/18 Javascript
vue通过点击事件读取音频文件的方法
2018/05/30 Javascript
JavaScript中判断为整数的多种方式及保留两位小数的方法
2019/09/09 Javascript
微信小程序页面渲染实现方法
2019/11/06 Javascript
jQuery使用hide()、toggle()函数实现相机品牌展示隐藏功能
2021/01/29 jQuery
Python通过解析网页实现看报程序的方法
2014/08/04 Python
在Django的session中使用User对象的方法
2015/07/23 Python
python使用sqlite3时游标使用方法
2018/03/13 Python
Django实现全文检索的方法(支持中文)
2018/05/14 Python
利用python如何处理nc数据详解
2018/05/23 Python
Python常见排序操作示例【字典、列表、指定元素等】
2018/08/15 Python
有趣的流行文化T恤、马克杯、手机壳和更多:Look Human
2019/01/07 全球购物
科颜氏印度官网:Kiehl’s印度
2021/02/20 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
违反课堂纪律检讨书
2014/01/19 职场文书
护理专科毕业生自荐书范文
2014/02/19 职场文书
公司节能减排倡议书
2014/05/14 职场文书
运动会广播稿100字
2014/09/14 职场文书
地心历险记观后感
2015/06/15 职场文书
《领导干部从政道德启示录》学习心得体会
2016/01/20 职场文书
导游词之山东红叶谷
2019/10/31 职场文书
Nginx下SSL证书安装部署步骤介绍
2021/12/06 Servers
解决Springboot PostMapping无法获取数据的问题
2022/05/06 Java/Android
Python OpenGL基本配置方式
2022/05/20 Python