Vuejs 组件化开发tab组件实例
来源:互联网 发布:淘宝线下门店有什么用 编辑:程序博客网 时间:2024/06/07 14:10
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>index</title> <link rel="stylesheet" href="css/index.css"> <script type="text/javascript" src="../lib/vue.min.js"></script> <script type="text/javascript" src="../lib/jquery-1.11.3.min.js"></script> <style> * { margin: 0; padding: 0; } #tabPanel .itemname { height: 40px; width: 180px; margin-bottom: 10px; } #tabPanel .itemcontent { height: 40px; width: 180px; } #tabPanel .addbtn { margin: 10px 0 0 95px; width: 185px; height: 40px; } #tabPanel .active { background: #eee; } #tabPanel { height: 340px; width: 500px; margin: 100px auto; } #tabPanel .tab { height: 40px; background: #ccc; margin-top: 10px; } #tabPanel .tab ul li { list-style: none; float: left; width: 80px; height: 40px; text-align: center; line-height: 40px; } #tabPanel .content { height: 300px; width: 500px; background: #eee; } </style></head><body> <div id="tabItem"> <my-tab></my-tab> <my-tab></my-tab> </div> <!--组件模板--> <script type="text/template" id="tab"> <div id="tabPanel"> <label>添加滑块名称:<input type="text" v-model="tabItem" class="itemname"></label><br> <label>添加滑块内容:<input type="text" v-model="tabContent" class="itemcontent"></label><br> <input type="button" value="添加选项" @click="addItem()" class="addbtn"> <div class="tab"> <ul> <li v-for="(value, index) in tabs" v-bind:class="{active: index == num }" @mouseover="toggle(index)" @dblclick="del(index)">{{value}}</li> </ul> </div> <div class="content"> <div class="box" v-for="(value, index) in tabContents" v-show="index == num" contenteditable="true" @blur="editContent(index,value)">{{value+index}}</div> </div> </div> </script> <!--组件模板--></body></html><script> var vue = new Vue({ el: "#tabItem", data: { }, components: { 'my-tab': { template: '#tab', data: function() { return { tabs: ["第一项", "第二项"], tabContents: ["第一项内容", "第二项内容"], num: 0, tabItem: "", tabContent: "" } }, methods: { //切换滑块 toggle: function(index) { this.num = index; }, //添加滑块 addItem: function() { if (this.tabItem == "" || this.tabContent == "") { alert("填写完整的名称和内容"); } else { this.tabs.push(this.tabItem); this.tabContents.push(this.tabContent); } }, //双击删除滑块 del: function(index) { this.tabs.splice(index, 1); this.tabContents.splice(index, 1) }, //编辑选项内容 editContent: function(index, value) { this.tabContents[index] = value; console.log(this.tabContents); } } } } });</script>
0 0
- Vuejs 组件化开发tab组件实例
- vuejs组件开发之手风琴菜单组件实例
- VueJs的组件化
- vueJS组件
- vuejs 组件+路由
- vuejs学习“递归组件”
- vuejs父子组件通信
- vuejs 常用ui组件
- vuejs组件系统
- vuejs组件使用问题
- VueJS兄弟组件通信
- vuejs 组件的认识
- VueJS-组件通信
- vueJs图表组件
- Vuejs组件之slot内容分发实例详解
- vuejs组件之slot内容分发实例详解
- 【vue开发 环境搭建】从 vuejs环境搭建到组件化编程----Hello World!
- vuejs高德地图位置选择组件的开发及使用/vuejs地图开发
- qtquick创建UI界面文件
- 最大公约数和最小公倍数(难度:半颗星)
- 购买云服务器及ubuntu搭建NGINX MYSQL PHP 环境
- mmap与直接IO(read、write)的效率比较
- 《大话数据结构》pdf
- Vuejs 组件化开发tab组件实例
- django搭建个人博客09,文章详细2-评论
- 1.Nginx 简介
- 基于Android与STM32的宿舍自动开门神器
- android videoView播放视频,对播放结束的监听方法
- hihoCoder Trie 树
- A Bug's Life 分身法OR 带权并查集
- MySQL12-数据备份与还原
- Majority Element