vue2.0数据双向绑定与表单bootstrap+vue组件


Posted in Javascript onFebruary 27, 2017

最近一直在用vue,觉得确实是好用。

一,拿数据的双向绑定来说吧

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>demo1</title>
</head>
<body>
  <div id="app">
{{ name }}
    <input type="text" v-model="name">
  </div>
</body>
<script type="text/javascript" src="vue.js"></script>
<script>
  new Vue({
    el: '#app',
    data: {
      name: ''
    },
    watch: {
      name: function () {
        console.log(this.name);
      }
    }
  });
</script>
</html>

vue2.0数据双向绑定与表单bootstrap+vue组件

vue中的所有数据都是在data中定义的,

el是指的挂载的元素,

watch 是我可以检测某个数据的变化。

v-model=“name” 就是与data中的name数据绑定,input框中的值变,那么data中的name也会变,我们可以通过差值操作,也就是{{name}}来看到变化,当然也可以像我一样打log。都是可以的。

当然这样也许还不是很实用,官网上也是这么介绍的,那么就说我在工作中是怎么用的吧

vue2.0数据双向绑定与表单bootstrap+vue组件

现在我的需求是要得到我表单里边的所有value ,我们也许可以       

let service = $('.vendor').val();
        let vendor = document.getElementsByClassName('vendor')[0].value;

但是这样就完全没有get到vue双向绑定的好处了,那么我们该怎么做呢?

import service from './components/service.vue';
  import $ from 'jquery';
  export default {
    data () {
      return {
        resultData: '',
        vendor: '',
        dType: '',
        services: [service],
        items: [service],
        device: '',
        dDesc: ''
      }
    },
    watch: {
      services () {
        console.log(this.services);
      },
      items (val) {
        this.items = val;
        console.log(this.items);
      }
    },
    components: {
      service
    },
    methods: {
      addService (component) {
        this.items.push(component);
      },
      childServicesChange (val) {
        this.services = val;
      },
      commit () {
        console.log('commit');
        let device = {
          "type": 'urn:' + this.vendor + ':device:' + this.dType + ':0000',
          "description": this.dDesc,
          "services": this.items
        };

看到没,我就是直接用的this.vendor, vendor是在data中定义好的,也进行了双向绑定v-model

<template>
  <div class="devDesc">

     Device Description

<form class="form-horizontal" role="form" ref="form" id="form">
    <div class="form-group">
      <label for="vendor" class="col-sm-2 control-label text-left">vendor:</label>
      <div class="col-sm-2">
        <input type="text" class="form-control vendor" id="vendor" v-model="vendor" control-label name="vendor">
      </div>
    </div>
    <div class="form-group">
      <label for="dType" class="col-sm-2 control-label text-left">Type:</label>
      <div class="col-sm-2">
        <input type="text" class="form-control dType" id="dType" v-model="dType" control-label name="dType">
      </div>
    </div>
    <div class="form-group">
      <label for="dDesc" class="col-sm-2 control-label text-left">description:</label>
      <div class="col-sm-2">
        <input type="text" class="form-control dDesc" id="dDesc" v-model="dDesc" control-label name="dDesc">
      </div>
    </div>
      <!--<serList class="serListPad" :services="services" @services-change="servicesChange">-->
      <!--</serList>-->
      <!--发现这个serList不用抽出来组件-->
    <div class="serList serListPad">
      <section class="serList-section">
          <span class="span-serList">service List</span>
          <button type="button" class="btn btn-default btn-sm" @click="addService(service)">
            <span class="glyphicon glyphicon-plus"></span>
          </button>
      </section>
      <!--<service v-for="item in items" :items="items" :myService="myService" @child-services-change="childServicesChange"></service>-->
      <div v-for="service in services">
        <service v-for="item in items" :items="items" :service="service" @child-services-change="childServicesChange"></service>
      </div>
    </div>
    </form>
    <button class="btn btn-info" @click="commit">commit</button>
    <button class="btn btn-success">save</button>
  </div>
</template>

vue2.0数据双向绑定与表单bootstrap+vue组件

以上所述是小编给大家介绍的vue2.0数据双向绑定与表单bootstrap+vue组件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript addBookmark 加入收藏 多浏览器兼容
Aug 15 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
Mar 29 Javascript
详解Javascript中的Object对象
Feb 28 Javascript
阿里云ecs服务器中安装部署node.js的步骤
Oct 08 Javascript
jQuery无缝轮播图代码
Dec 22 Javascript
详解使用Typescript开发node.js项目(简单的环境配置)
Oct 09 Javascript
elementUI 设置input的只读或禁用的方法
Oct 30 Javascript
小程序开发中如何使用async-await并封装公共异步请求的方法
Jan 20 Javascript
教你搭建按需加载的Vue组件库(小结)
Jul 29 Javascript
jquery 遍历hash操作示例【基于ajax交互】
Oct 12 jQuery
Vue动态加载图片在跨域时无法显示的问题及解决方法
Mar 10 Javascript
react PropTypes校验传递的值操作示例
Apr 28 Javascript
flag和jq on 的绑定多个对象和方法(必看)
Feb 27 #Javascript
利用Node.js+Koa框架实现前后端交互的方法
Feb 27 #Javascript
详谈js中数组(array)和对象(object)的区别
Feb 27 #Javascript
JS区分Object与Aarry的六种方法总结
Feb 27 #Javascript
利用Vue.js框架实现火车票查询系统(附源码)
Feb 27 #Javascript
JavaScript中object和Object的区别(详解)
Feb 27 #Javascript
jQuery使用DataTable实现删除数据后重新加载功能
Feb 27 #Javascript
You might like
PHP4实际应用经验篇(5)
2006/10/09 PHP
深入理解PHP原理之异常机制
2010/08/21 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
详解php中curl返回false的解决办法
2019/03/18 PHP
js 深拷贝函数
2008/12/04 Javascript
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
jquery 获取表单元素里面的值示例代码
2013/07/28 Javascript
基于javascript的COOkie的操作实现只能点一次
2014/12/26 Javascript
JS与Ajax Get和Post在使用上的区别实例详解
2016/06/08 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
使用 jQuery.ajax 上传带文件的表单遇到的问题
2016/10/31 Javascript
js中string和number类型互转换技巧(分享)
2016/11/28 Javascript
Angular.js实现注册系统的实例详解
2016/12/18 Javascript
angularjs数组判断是否含有某个元素的实例
2018/02/27 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
js判断非127开头的IP地址的实例代码
2020/01/05 Javascript
python中global与nonlocal比较
2014/11/21 Python
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
2015/05/25 Python
Python实现获取域名所用服务器的真实IP
2015/10/25 Python
总结网络IO模型与select模型的Python实例讲解
2016/06/27 Python
python list格式数据excel导出方法
2018/10/31 Python
对Python3 解析html的几种操作方式小结
2019/02/16 Python
pyside+pyqt实现鼠标右键菜单功能
2020/12/08 Python
linux安装python修改默认python版本方法
2019/03/31 Python
Python如何把多个PDF文件合并代码实例
2020/02/13 Python
Python函数默认参数常见问题及解决方案
2020/03/26 Python
ipython jupyter notebook中显示图像和数学公式实例
2020/04/15 Python
python 密码学示例——凯撒密码的实现
2020/09/21 Python
自考生自我鉴定范文
2013/10/01 职场文书
广场舞大赛策划方案
2014/05/31 职场文书
教师思想作风整顿个人剖析材料
2014/10/10 职场文书
2015年村党支部工作总结
2015/04/30 职场文书
2015年全国爱眼日活动方案
2015/05/05 职场文书
创业计划书之宠物店
2019/09/19 职场文书