Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场

Vue

作者头像
xiaozhangStu
发布于 2023-08-23 06:18:48
发布于 2023-08-23 06:18:48
30600
代码可运行
举报
文章被收录于专栏:xiaozhangStuxiaozhangStu
运行总次数:0
代码可运行

VUE

介绍

1、Vue.js目前最火的的一个前端框架,三大主流前端框架之一。 2、Vue.js是一套构建用户界面的框架(一套完整的解决方案,对项目侵入性大,中途需要跟换框架则需要重构整个项目),只关注视图层,易上手,有配套的第三方类库。 3、提高开发效率,帮助减少不必要的dom操作;双向数据绑定,通过框架提供的指令,前端只需要关注业务逻辑,不再关心dom如何渲染。

4.作者尤雨溪

MVVM

1、前端视图层的概念,主要把每个页面分成了M(Model)、V(View)、VM(VM ViewModel)。VM是其中核心,M和V间的调度者。 2、M,保存的是每个页面中单独的数据(比如要渲染页面表格,ajax请求到后台的你的数组,此数据即为M)。 3、V,每个页面的html结构。 4、VM,一个调度者,分割了M和V,M和V不直接关联,通过中间的VM。V想要保存数据到M,都要有VM做中间处理;V想要渲染页面,需要调用VM,VM从M中取数据。 5、前端中使用MVVM思想,主要让开发更方便,MVVM提供了数据的双向绑定(由VM提供)

为什么要了解vue

1.前端三大框架

angula 特色 模块化

react 特色 虚拟dom

vue 特色 模块化+虚拟dom+自己的一些独特的功能

2.使用范围

南京前端市场占比约60%,但是以后不一定

3.面试可能会问你了解vue吗

4.考试要求

快速入门

引入cdn
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
案例
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
	<!--视图层-->
<div id="d1">
  <p>{{ message }}</p>
</div>

<script>
 var vueObj = new Vue({
  el: '#d1',
 /* model层*/
  data: {
    message: 'helloWorld'
  }
})
</script>
</body>
</html>

{{xxx}}有点jsp里el的感觉吧 这里说一下 就是根据mvc思想去构建的vue,所以学习的时候要有类比思想,所有springmvc很重要!

思路
1.导入vue
2.构建vue对象
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
new Vue({
  
})
3.相关常用属性

el:绑定元素

data:Vue 实例的数据对象

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
格式是 data: {
    count: 1
  }data(): {
   return{
    count: 1
   }
   
  }
  实际开发中都是用return的,因为vue一般都是组件调用模式开发,组件是一个可复用的实例,当你引用一个组件的时候,组件里的data是一个普通的对象,所有用到这个组件的都引用的同一个data,就会造成数据污染。将data封装成函数后,在实例化组件的时候,我们只是调用了data函数生成的数据副本,避免了数据污染

components:Vue组件(后面会讲)

computed:计算属性

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="d1">
  <p>原始数字: {{ count }}</p>
  <p>计算后数字: {{ add }}</p>
</div>

<script>
var vm = new Vue({
  el: '#d1',
  data: {
    count: 1
  },
  computed: {
    // 计算属性的 getter
    add: function () {
      // `this` 指向 vm 实例
      return this.count+3
    }
  }
})
</script>

watch:侦听属性

filters:过滤器

methods:Vue实例方法

render:渲染函数,创建虚拟DOM

created:在实例创建完成后被立即调用,完成初始化操作

mounted()方法:el挂载到Vue实例上了,开始业务逻辑操作,系统处理消息时预先设置好的一个函数,就好像某一个周期,这个周期是系统自动执行的

beforeDestroy:实例销毁之前调用

体验绑定

控制台打vueObj._data.message="dsadasda"观察变化

相关指令(v-开头)

v-html

指令用于输出 html 代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="d1">
    <div v-html="message"></div>
</div>
    
<script>
new Vue({
  el: '#d1',
  data: {
    message: '<h1>1234</h1>'
  }
})
</script>
v-bind

HTML 属性中的值应使用 v-bind 指令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
</head>
<body>
	<!--视图层-->
<div id="d1">
  <p v-bind:hidden="message">111</p>
</div>

<script>
 var vueObj = new Vue({
  el: '#d1',
 /* model层*/
  data: {
    message: false
  }
})
</script>
</body>
</html>

可以缩写,也就是:属性 一般不写v-bind 一般只写:属性比如说

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<input type="text" :value="va" >
v-if
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="d1">
    <p v-if="flag">在这里</p>
</div>
    
<script>
new Vue({
  el: '#d1',
  data: {
    flag: true
  },
   methods:{
       
       
       
   }
})
</script>
v-else
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="app">
    <div v-if="false">
      Sorry
    </div>
    <div v-else>
      Not sorry
    </div>
</div>
    
<script>
new Vue({
  el: '#app'
})
</script>
v-else-if
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="app">
    <div v-if="type === 'A'">
      A
    </div>
    <div v-else-if="type === 'B'">
      B
    </div>
    <div v-else-if="type === 'C'">
      C
    </div>
    <div v-else>
      Not A/B/C
    </div>
</div>
    
<script>
new Vue({
  el: '#app',
  data: {
    type: 'a'
  }
})
</script>

v-else 、v-else-if 必须跟在 v-if 或者 v-else-if之后。

v-on
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="app">
    <p>{{ message }}</p>
    <button @click="doSomething">点我</button>
</div>


</body>
<script>
    new Vue({
        el: '#app',
        data: {
            message: '123'
        },
        methods:{
            doSomething: function () {
        alert("ddd");

    }


        }
    })

</script>
</html>

v-on 指令,它用于监听 DOM 事件

可以缩写 @xx事件 例如onclick用@click

v-model
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="d1">
    <p>{{ message }}</p>
    <input v-model="message">
</div>
    
<script>
new Vue({
  el: '#d1',
  data: {
    message: '小黄'
  }
})
  
</script>

v-model 指令用来在 input、select、textarea、checkbox、radio 等表单控件元素上创建双向数据绑定,根据表单上的值,自动更新绑定的元素的值。

v-for
迭代数组
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>


<div id="d1">
    <dl>
        <li v-for="str in arr">
            {{ str.name }}
        </li>
    </dl>
</div>
</body>
<script>
    new Vue({
        el: '#d1',
        data: {
            arr: [
                { name: '小黄' },
                { name: '小包' },
                { name: '小王' }
            ]
        }
    })
</script>
</html>
迭代对象1
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>


<div id="d1">
    <ul>
        <li v-for="value in people">
            {{ value }}
        </li>
    </ul>
</div>
</body>
<script>
    new Vue({
        el: '#d1',
        data: {
            people: {
                name: '小黄',
                age: 18,
                sex: '男'
            }
        }
    })
</script>
</html>
迭代对象2
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>


<div id="d1">
    <ul>
        <li v-for="(value, key) in people" >
            属性{{ key }} ,{{ value }}
    </ul>
</div>
</body>
<script>
    new Vue({
        el: '#d1',
        data: {
            people: {
                name: '小黄',
                age: 18,
                sex: '男'
            }
        }
    })
</script>
</html>

加不加key的问题

不加 复选框出问题增加的时候已勾选的check框出现了错误

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="d1">
    <div>
        <input type="text" v-model="name">
        <button @click="add">添加</button>
    </div>
    <ul>
        <li v-for="str in list">
            <input type="checkbox"> {{str.name}}
        </li>
    </ul>
    <script>
        // 创建 Vue 实例,得到 ViewModel
        var vm = new Vue({
            el: '#d1',
            data: {
                name: '',
                newId: 3,
                list: [
                    { id: 1, name: '小王' },
                    { id: 2, name: '小张' },
                    { id: 3, name: '小李' }
                ]
            },
            methods: {
                add() {
                    //头部追加
                    this.list.unshift({ id: ++this.newId, name: this.name })
                    this.name = ''
                }
            }
        });
    </script>
</div>

</body>

</html>

加了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="d1">
    <div>
        <input type="text" v-model="name">
        <button @click="add">添加</button>
    </div>
    <ul>
        <li v-for="str in list" :key="str.id">
            <input type="checkbox"> {{str.name}}
        </li>
    </ul>
    <script>
        // 创建 Vue 实例,得到 ViewModel
        var vm = new Vue({
            el: '#d1',
            data: {
                name: '',
                newId: 3,
                list: [
                    { id: 1, name: '小王' },
                    { id: 2, name: '小张' },
                    { id: 3, name: '小李' }
                ]
            },
            methods: {
                add() {
                    //头部追加
                    this.list.unshift({ id: ++this.newId, name: this.name })
                    this.name = ''
                }
            }
        });
    </script>
</div>

</body>

</html>

vue中列表循环需加:key="唯一标识" 唯一标识可以是item里面id index等,因为vue组件高度复用增加Key可以标识组件的唯一性,为了更好地区别各个组件 key的作用主要是为了高效的更新虚拟DOM

template标签

template的作用是模板占位符,可帮助我们包裹元素,但在循环过程当中,template不会被渲染到页面上类似于c:foreach的感觉

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="d1">
    <div>
        <table>
            <tr>
                <th>id</th>
                <th>姓名</th>
            </tr>
            <template v-for="str in list" :key="str.id">
                <tr>
                    <td>{{str.id}}</td>
                    <td>{{str.name}}</td>
                </tr>
            </template>
        </table>
    </div>

    <script>
        // 创建 Vue 实例,得到 ViewModel
        var vm = new Vue({
            el: '#d1',
            data: {
                name: '',
                newId: 3,
                list: [
                    { id: 1, name: '小王' },
                    { id: 2, name: '小张' },
                    { id: 3, name: '小李' }
                ]
            },
            methods: {
                add() {
                    //头部追加
                    this.list.unshift({ id: ++this.newId, name: this.name })
                    this.name = ''
                }
            }
        });
    </script>
</div>

</body>

</html>

components组件

全局组件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Vue.component("",{})//也就是名字加对象
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="d1">
    <comp></comp>
    <div>
        <table>
            <tr>
                <th>id</th>
                <th>姓名</th>
            </tr>
            <template v-for="str in list" :key="str.id">
                <tr>
                    <td>{{str.id}}</td>
                    <td>{{str.name}}</td>
                </tr>
            </template>
        </table>
    </div>

    <script>
        Vue.component("comp",{template:"<h1>我是模板</h1>"});
        // 创建 Vue 实例,得到 ViewModel
        var vm = new Vue({
            el: '#d1',
            data: {
                name: '',
                newId: 3,
                list: [
                    { id: 1, name: '小王' },
                    { id: 2, name: '小张' },
                    { id: 3, name: '小李' }
                ]
            },
            methods: {
                add() {
                    //头部追加
                    this.list.unshift({ id: ++this.newId, name: this.name })
                    this.name = ''
                }
            },

        });

    </script>
</div>

</body>

</html>
局部组件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
先定义对象
var xxx={};
再在你建立的vue对象里面去声明属性
 var vm = new Vue({
            el: '#d1',
            components:{
                "xxx":xxx
            }
        });
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script>
<body>
<div id="d1">
    <comp></comp>
    <div>
        <table>
            <tr>
                <th>id</th>
                <th>姓名</th>
            </tr>
            <template v-for="str in list" :key="str.id">
                <tr>
                    <td>{{str.id}}</td>
                    <td>{{str.name}}</td>
                </tr>
            </template>
        </table>
    </div>

    <script>
       var comp={template:"<h1>我是模板</h1>"};
        // 创建 Vue 实例,得到 ViewModel
        var vm = new Vue({
            el: '#d1',
            data: {
                name: '',
                newId: 3,
                list: [
                    { id: 1, name: '小王' },
                    { id: 2, name: '小张' },
                    { id: 3, name: '小李' }
                ]
            },
            methods: {
                add() {
                    //头部追加
                    this.list.unshift({ id: ++this.newId, name: this.name })
                    this.name = ''
                }
            },
            components:{
                "comp":comp
            }
        });

    </script>
</div>

</body>

</html>

node.js

运行在服务端的 JavaScript。类比java中jre

安装

双击运行 无脑下一步

安装结束 cmd node -v 和npm -v 能用就代表成功

vue-cli

Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统 node.js已经集成

使用vue-cli快速创建vue项目

准备:先在idea里装vue.js插件,重启idea,找到setting里的file and code template 将vue模板改成

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>
    <div></div>
</template>

<script>
    import axios from "axios";

    export default {
        data() {
            return {};
        },

        components: {},

        computed: {},

        mounted() {
        },

        methods: {
            dosth:function (){axios({
                      url:"",
                      method:"",
                      params: {},
                      data: {},

                  }).then(res=> {

            })
        }
        }
    }

</script>

<style scoped>

</style>
  1. 建一个文件夹
  2. 用idea打开它
  3. 点击左下角的Terminal
  4. 输入命令 vue create 项目名(出来选项不要选default 选最后一个)
  5. 如果现实没有vue这个命令就执行npm i -g @vue/cli
  6. 如果是npm不是内部或外部命令的 就把idea关了以管理员运行
  7. 按空格把router选上把Linter、formatter去掉
  8. 一直回车到save this a preSet...........(y/n)的你写个n。回车
  9. 最后他会让你cd xxx 和npm run serve 你就照着做 然后弹出来地址你就成功了

8.如果你想关闭 你就ctrl + c

分析项目

.git...git忽略文件

babel...es6-es5

package...类似于包的说明书

main.js

类似于程序入口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Vue from 'vue'//引入vue
import App from './App.vue'//引入组件
import router from './router'//引入路由

Vue.config.productionTip = false//关闭生成提示

new Vue({
  router,
  render: h => h(App)  加载完整vue 并且引用app组件
}).$mount('#app')//等于new Vue({
el:"#app"
  router,
  render: h => h(App)
})
app.vue(汇总所有的组件)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>结构
  <div id="app">
    <router-view/>
  </div>
</template>

<style>样式
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
}

#nav {
  padding: 30px;
}

#nav a {
  font-weight: bold;
  color: #2c3e50;
}

#nav a.router-link-exact-active {
  color: #42b983;
}
</style>
assets文件夹

放静态资源的

components文件夹

放组件的

public文件夹

index.html单页面应用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <title><%= htmlWebpackPlugin.options.title %></title>
  </head>
  <body>
    <noscript>
      <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
    </noscript>
    <div id="app"></div>//对应main.js里的#app
    <!-- built files will be auto injected -->
  </body>
</html>
home.vue
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>组件结构
  <div class="home">
    <img alt="Vue logo" src="../assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js App"/>
  </div>
</template>

<script>组件交互
// @ is an alias to /src
import HelloWorld from '@/components/HelloWorld.vue'

export default {  默认暴露(引入简单,不然引入不到这个)
  name: 'Home',调用时候的名字
  components: {
    HelloWorld
  }
}
</script>

axios(ajax i/o system)

命令

cd 项目根目录

npm install axios --save

怎么用呢?

import axios from ‘axios’

在methods里的方法里面写

请求方式

axios(config)

axios.request(config)

axios.get(url[, config])

axios.delete(url[, config])

axios.head(url[, config])

axios.post(url[, data[, config]])

axios.put(url[, data[, config]])

axios.patch(url[, data[, config]])

模仿ajax写axios
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
axios({
url:,
method:,
params:{},
data:{},

}).then(funtion(res){

})
.catch(funtion(error){

})
或着
axios({
url:,
method:,
params:{},
data:{},
responseType:'',
 }).then(res=>{
                    console.log(res)

                }).catch(error=>{
                console.log(error);
        })
            }

注意点如果你是get 你就在params传值 如果你是post 你就在data传值

跳转路由传值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<router-link to="Add">新增</router-link>//跳转页面
<router-link to="{name:'Add', query:{ id: id }}">新增</router-link>//跳转页面带值
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
this.$router.push("/xxx?xxx=xxx")//this.$router 相当于一个全局的路由器对象,.push导航到不同的 URL获取值

this.$route.query.xxx   //this.$route 表示当前路由对象,每一个路由都会有一个 route 对象,是一个局部的对象,可以获取对应的 name, path, params, query 等属性

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
vue快速学习02、基础用法
vue快速学习02、基础用法 目录 vue快速学习02、基础用法 1、数据双向绑定 2、数据绑定 3、钩子函数 4、created函数用法1 5、created函数用法2 6、filters过滤器 7、v-once与v-text 8、数据计算 9、数据绑定 10、样式控制1 11、样式控制2 12、v-if 14、v-on 15、watch 16、v-for 17、computed 18、table增加操作 19、table删除操作 20、table修改 21、template 22、componen
红目香薰
2022/11/30
1.1K0
vue快速学习02、基础用法
.NET MVC第十章 vue axios解析web api接口
axios使用方法相对更方便一些,加载数据也只需要在created中处理即可,如果有需要的话就搭建一个脚手架,如果不方便话使用那个都无所谓的,功能是肯定可以实现的,前提是接口一定要跨域啊,如果接口没有跨域是无法进行解析的。
红目香薰
2022/11/30
5390
.NET MVC第十章 vue axios解析web api接口
进阶的JavaScript-Vue
在上周六的全天课程以及这周三晚上的复习答疑课程,我们对于前端知识,进行了进一步的学习。
TestOps
2022/04/07
3450
进阶的JavaScript-Vue
ASP.NET Core微服务(四)——【静态vue使用axios解析接口】
bootstrap-css:【<link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/3.3.7/css/bootstrap.min.css">】
红目香薰
2022/11/28
5710
Vue 入门
最后便会在本目录生成一个dist文件夹 里面就会有js/bundle.js,一个压缩好的可以调用的js。
HcodeBlogger
2020/07/14
3630
Vue 入门
【无标题】
早期的网站开发整个HTML页面是由服务器来渲染的。服务器将渲染好的对应的HTML页面返回给客户端进行展示,但是一个网站包含很多页面,那服务器是怎么处理的呢?
上分如喝水
2023/01/31
1.5K0
【无标题】
前端(五)-Vue简单基础
你可以用v-model指令在表单、及元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇, 但v-model本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。   注意:v-model会忽略所有表单元素的value、checked、selected特性的初始值而总是将Vue实例的数据作为数据来源。你应该通过JavaScript在组件的data选项中声明初始值!
化羽羽
2022/10/28
1K0
【愚公系列】2022年04月 Python教学课程 78-VUE组件中的数据和属性
组件是Vue中的一个重要概念,是一个可以重复使用的Vue实例,它拥有独一无二的组件名称,它可以扩展HTML元素,以组件名称的方式作为自定义的HTML标签。因为组件是可复用的Vue实例,所以它们与new Vue()接收相同的选项,例如data,computed、watch、methods以及生命周期钩子等。仅有的例外是像el这样根实例特有的选项。
愚公搬代码
2022/04/23
8360
VUE.js高级
首先先更正一下昨天发送内容的错误之处,对你造成的影响深表歉意。对照昨天的文章:ajax和vue.js(此处连接方便大家查看对照)中第6部分vue的事件与函数中,第4行更正为this.属性名或对象名.属性(昨天写成了冒号,此处为手误,特此更正)
小闫同学啊
2019/07/18
4.5K0
VUE.js高级
一篇文章,Vue快速入门!!!
MVVM源自于经典的MVC(Model-View-Controller)模式。MVVM的核心是ViewModel层,负责转换Model中的数据对象来让数据变得更容易管理和使用。其作用如下:
全栈程序员站长
2022/08/19
2K0
一篇文章,Vue快速入门!!!
后端程序员的 VUE 超简单入门笔记
现在的各种开源项目中使用 Vue 的越来越多了,作为一个后端程序员不会点 Vue 也都玩不转了。所以抽空学习了一下 Vue 的简单用法,整理成笔记,方便有需要的同学一起学习。
码农UP2U
2021/09/23
8750
vue+axios实现评论留言板
这里的评论数据以及添加数据都是用的FastAPI,然后再用axios发送请求,获取评论以及添加评论。
SingYi
2022/07/14
1.2K0
vue+axios实现评论留言板
toast弹窗的用法_vue弹出提示框
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/08
3K0
toast弹窗的用法_vue弹出提示框
vue基本语法
<!DOCTYPE html> <html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml" xmlns:v-model="http://www.w3.org/1999/xhtml"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!--vue基本语法--> <script src="vue.min.js"></script> <div id="a
shaoshaossm
2022/12/27
2220
vue基本语法
教育平台项目前端:Vue.js 入门
Vue.js 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是 Vue 被设计为可以自底向上逐层应用。
RendaZhang
2020/09/08
4.5K0
实现简单前后端完全分离增删改查:node.js+mysql+vue
(由于不是大项目,全部使用CDN链接资源) 在根目录新建一个文件 index.html 代码如下
不愿意做鱼的小鲸鱼
2022/09/24
2.3K0
实现简单前后端完全分离增删改查:node.js+mysql+vue
Vue中key的作用
key的特殊attribute主要用在Vue的虚拟DOM算法,在新旧Nodes对比时辨识VNodes。如果不使用key,Vue会使用一种最大限度减少动态元素并且尽可能的尝试就地修改、复用相同类型元素的算法,而使用key时,它会基于key的变化重新排列元素顺序,并且会移除key不存在的元素。此外有相同父元素的子元素必须有独特的key,重复的key会造成渲染错误。
WindRunnerMax
2020/08/27
1.2K0
极简开发VFP混搭VUE,一起迈入新世界的大门
1、独立版本 我们可以在 Vue.js 的官网上直接下载 vue.min.js 并用 script 标签引入。
加菲猫的VFP
2022/10/27
5660
vue双向绑定经典案例「建议收藏」
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/10/05
2480
vue双向绑定经典案例「建议收藏」
Vue之自定义事件
我们都知道父组件想给子组件传递东西很简单,props里直接放就完事了,而子组件想给父组件传东西就不是那么容易,这个时候就可以利用自定义事件来满足我们的需求。
henu_Newxc03
2021/12/28
5720
Vue之自定义事件
相关推荐
vue快速学习02、基础用法
更多 >
LV.1
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验