我之前学了学angular

发现angular和vue的指令有点类似

先说一下

new  Vue({
         el: "#box", // element(元素) 当前作用域
         data(){
                return { //用return返回对象
                       msg: "122"
                }
            }
        })

首先是

v-model双向绑定数据

<input type="text" v-model="msg"/>   {{msg}} <!--取数据-->
 
v-for循环
 
  1. <div id="box">
  2. <ul>
  3. <!--ng-repeat-->
  4. <li v-for="item in arr">
  5. <span>{{item.name}}</span>
  6. <span>{{item.age}}</span>
  7. </li>
  8. </ul>
  9. </div>
  10. <script type="text/javascript">
  11. new Vue({
  12. el:'#box',
  13. data(){
  14. return{
  15. // arr:['module','views','controlle','aaaaa']
  16. arr:[
  17. {"name":"xiaohong1","age":12},
  18. {"name":"xiaohong2","age":12},
  19. {"name":"xiaohong3","age":12},
  20. {"name":"xiaohong4","age":12}
  21. ]
  22. }
  23. }
  24. })
  25. </script>
v-show 显示与隐藏
  1. <div id="box">
  2. <div style="width: 100px;height: 100px;background: black;display: none" v-show="show"></div>
  3. </div>
  4. </body>
  5. <script>
  6. new Vue({
  7. el: "#box",
  8. data(){
  9. return {
  10. show: true
  11. }
  12. }
  13. })
  14. </script>

v-if显示与隐藏  (dom元素的删除添加   个人理解)

  1. <div id="box">
  2. <div style="width: 100px;height: 100px;background: black;" v-if="show"></div>
  3. </div>
  4.  
  5. <script>
  6. new Vue({
  7. el: "#box",
  8. data(){
  9. return {
  10. show: true
  11. }
  12. }
  13. })
  14. </script>

v-else

  1. <div id="box">
  2. <div style="width: 100px;height: 100px;background: black;" v-if="show"></div>
  3. <div style="width: 300px;height: 300px;background: blue" v-else=""></div>
  4. </div>
  5.  
  6. <script>
  7. new Vue({
  8. el: "#box",
  9. data(){
  10. return {
  11. show: true
  12. }
  13. }
  14. })
  15. </script>

v-else-if

  1. <div id="box">
  2. <div style="width: 100px;height: 100px;background: black;" v-if="show"></div>
  3. <div style="width: 100px;height: 100px;background: aqua;" v-else-if=""></div>
  4. <div style="width: 300px;height: 300px;background: blue" v-else=""></div>
  5. </div>
  6.  
  7. <script>
  8. new Vue({
  9. el: "#box",
  10. data(){
  11. return {
  12. show: true
  13. }
  14. }
  15. })
  16. </script>

v-bind

  1. <div id="box">
  2. <input type="text" v-bind:value="msg">
  3. <a :href="link">点击</a>
  4. </div>
  5.  
  6. <script>
  7. new Vue({
  8. el: "#box",
  9. data(){
  10. return {
  11. msg: "12222",
  12. link:"1、v-model.html"
  13. }
  14. }
  15. })
  16. </script>

v-on 事件

  1. <div id="box">
  2. <!-- v-on -->
  3. <button v-on:click="say">按钮</button>
  4. <!--<button @click="say">按钮</button>-->
  5. </div>
  6.  
  7. <script>
  8. new Vue({
  9. el: "#box",
  10. data(){
  11. return {}
  12. },
  13. methods: {
  14. say() {
  15. alert(111);
  16. }
  17. }
  18. })
  19. </script>

v-text读取文本不能读取html标签

  1. <div id="box">
  2. <div v-text="msg"></div>
  3. </div>
  4.  
  5. <script>
  6. new Vue({
  7. el: "#box",
  8. data(){
  9. return {
  10. msg:"11111"
  11. }
  12. },
  13. methods: {
  14. say() {
  15. alert(111);
  16. }
  17. }
  18. })
  19. </script>

v-html  能读取html标签

  1. <div id="box">
  2. <div v-html="msg"></div>
  3. </div>
  4.  
  5. <script>
  6. new Vue({
  7. el: "#box",
  8. data(){
  9. return {
  10. msg:"<h1>121212</h1>"
  11. }
  12. },
  13. methods: {
  14. say() {
  15. }
  16. }
  17. })
  18. </script>

v-class 类名

  1. <style>
  2. .red {
  3.  
  4. background: red;
  5. }
  6.  
  7. .blue {
  8. width: 100px;
  9. height: 100px;
  10. background: blue;
  11. }
  12.  
  13. </style>
  14.  
  15. <div id="box">
  16. <div style="width: 100px;height: 100px;" v-bind:class='{red:isred}'></div>
  17. <!--<div style="width: 100px;height: 100px;" v-bind:class='isred?"red":"blue"'></div>--> <!--三元运算符方式-->
  18. <!--<div style="width: 100px;height: 100px;" v-bind:class='[{red:"isred"}]'></div>-->
  19.  
  20. </div>
  21.  
  22. <script>
  23. new Vue({
  24. el: "#box",
  25. data(){
  26. return {
  27. isred:false
  28. }
  29. }
  30. })
  31. </script>

v-style  与v-class用法大致一样  这个我就不写了

v-once  与我下边的例子  就是  加载一次  如果用到事件中就是事件只执行一次(@click.once="show"

  1. <div id="box">
  2. <div v-once>{{msg}}</div>
  3. </div>
  4.  
  5. <script type="text/javascript">
  6. new Vue({
  7. el:"#box",
  8. data(){
  9. return{
  10. msg:"qwdqwdqwd"
  11. }
  12. }
  13. })
  14. </script>

v-cloak防闪烁

  1. <div id="box">
  2. <div v-cloak="">欢迎--{{msg}}</div>
  3. </div>
  4.  
  5. <script>
  6. new Vue({
  7. el:"#box",
  8. data(){
  9. return{
  10. msg:"111111"
  11. }
  12. }
  13. })
  14. </script>

v-pre  把标签内部的元素原位输出

  1. <div id="box">
  2. <div v-pre>欢迎--{{msg}}</div>
  3. </div>
  4.  
  5. <script>
  6. new Vue({
  7. el:"#box",
  8. data(){
  9. return{
  10. msg:"111111"
  11. }
  12. }
  13. })
  14. </script>

接下来就是一个总结了

  1. vue 是什么
  2.  
  3. 简介型的javascript框架 个人开发 (刘雨溪)
  4.  
  5. 特点:mvvm m=mvc module 模型 v=view 视图 c=controller 控制器
  6. mvvm m=mvc module 模型 v=view 视图 vm (视图与数据之间的传递)
  7. vue1 双向数据绑定 vue2 单向数据流
  8. 单页面应用
  9.  
  10. v-model 数据绑定
  11. data 返回对象用 return
  12.  
  13. v-for 循环 格式 v-for="字段名 in(of) 数组json"
  14.  
  15. v-show 显示 隐藏 传递的值为布尔值 true false 默认为false
  16.  
  17. v-if 显示与隐藏 v-show对比的区别 就是是否删除dom节点 默认值为false
  18.  
  19. v-else-if 必须和v-if连用
  20.  
  21. v-else 必须和v-if连用 不能单独使用 否则报错 模板编译错误
  22.  
  23. v-bind 动态绑定 作用: 及时对页面的数据进行更改
  24.  
  25. v-on 绑定事件 函数必须写在methods里面
  26. @click 快捷方法
  27.  
  28. v-text 解析文本
  29.  
  30. v-html 解析html标签
  31.  
  32. v-bind:class 三种绑定方法 1、对象型 '{red:isred}' 2、三目型 'isred?"red":"blue"' 3、数组型 '[{red:"isred"},{blue:"isblue"}]'
  33.  
  34. v-once 进入页面时 只渲染一次 不在进行渲染
  35.  
  36. v-cloak 防止闪烁
  37.  
  38. v-pre 把标签内部的元素原位输出

vue的指令的更多相关文章

  1. vue自定义指令

    Vue自定义指令: Vue.directive('myDr', function (el, binding) { el.onclick =function(){ binding.value(); } ...

  2. vue 自定义指令的使用案例

    参考资料: 1. vue 自定义指令: 2. vue 自定义指令实现 v-loading: v-loading,是 element-ui 组件库中的一个用于数据加载过程中的过渡动画指令,项目中也很少需 ...

  3. vue自定义指令用法总结及案例

    1.vue中的指令有哪些?

  4. vue之指令

    一.什么是VUE? 它是构建用户界面的JavaScript框架(让它自动生成js,css,html等) 二.怎么使用VUE? 1.引入vue.js 2.展示HTML <div id=" ...

  5. vue自定义指令(Directive中的clickoutside.js)的理解

    阅读目录 vue自定义指令clickoutside.js的理解 回到顶部 vue自定义指令clickoutside.js的理解 vue自定义指令请看如下博客: vue自定义指令 一般在需要 DOM 操 ...

  6. Vue自定义指令报错:Failed to resolve directive: xxx

    Vue自定义指令报错 Failed to resolve directive: modle 这个报错有2个原因: 1.指令单词拼错 2.Vue.directive() 这个方法没有写在 new Vue ...

  7. vue之指令篇 ps简单的对比angular

    这两天在开始vue的大型项目,发现和ng还是有许多不同,这里对比下两者的指令系统 难度系数:ng的指令难度大于vue:至少vue上暂时没发现@&=:require,compile,precom ...

  8. 第3章-Vue.js 指令扩展 和 todoList练习

    一.学习目标 了解Vue.js指令的实现原理 理解v-model指令的高级用法 能够使用Vue.js 指令完成 todoList 练习(重点+难点) 二.todoList练习效果展示 2.1.效果图展 ...

  9. 第2章-Vue.js指令

    一.学习目标 了解 什么 是 Vue.js 指令 理解 Vue.js 指令的 用途 掌握 Vue.js 指令的书写规范 能够 使用 Vue.js 指令完成部门页面交互效果(难点和重点) 二.指令的基本 ...

随机推荐

  1. 输入一段字符串,统计其中的数字,字母,空格,其他字符的方法 ----python---

    1.以简单的循环分支实现字符统计 str1 = input("输入字符串:") num=0;word=0;space=0;other=0; for i in str1: if i. ...

  2. spring @Autowired与@Resource的区别

    1.@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上. 2.@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必 ...

  3. TOMCAT程序的层级目录

    web | |---------js,jsp,html,css(资源文件在web根目录下面 可以被浏览器直接访问) |---------WEB-INF(配置文件web.xml   lib---jar ...

  4. 树的遍历——c#实现

    树作为一种重要的非线性数据结构,以分支关系定义其层次结构,在客观世界中应用广泛.通过对树遍历,将树进行线性化处理,即遍历的结果是将非线性结构的树种节点排列成一个线性序列.其中,最常见的遍历方式包括先序 ...

  5. flask接收post提交的json数据并保存至数据库

    定义数据模型 # 定义数据模型class User(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(d ...

  6. JSP数据库插入判断

  7. xmlhttp js 请求

    <html> <script> var xhr = new XMLHttpRequest(); xhr.open('GET', "http://ipinfo.io/j ...

  8. mysql执行计划id为空—UNION关键字

    简介 UNION 操作符用于合并两个或多个 SELECT 语句的结果集.例如,我有两个表,表1记录的是公司男员工的数据,包括年龄.姓名.职位.表2记录的是公司女员工的数据,包括姓名.家庭住址.手机号等 ...

  9. 在centos7 部署bbr

    How to Deploy Google BBR on CentOS 7 Published on: Thu, Jan 5, 2017 at 6:34 pm EST CentOS Linux Guid ...

  10. 超简单的全新win10安装

    1.准备工作! 这里说一下需要装系统的东西: 至少8G的U盘或内存卡 一台Windows电脑 在要安装的电脑上至少有16G的空间,最好至少64G. 2.现成电脑下载文件(已经有重装系统U盘跳过这一步) ...