Vue的自定义组件#
- 自宣言组件: 本质上, 组件是带有一个名称且可复用的Vue实例
Vue.component(组件名称,{
props:组件的属性,
data:组件的数据函数,
template:组件解析的标签模板
}
)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>自定义组件</title>
<script src="../js2/vue.js"></script>
</head>
<body>
<div id="div">
<my-button>我的按钮</my-button>
</div>
</body>
<script>
Vue.component("my-button",{
// 属性
props:["style"] ,
// 数据函数
data: function (){
return{
msg:"我的按钮"
}
},
// 解析标签模板
template:"<button style='color:red'>{{msg}}</button>"
});
new Vue({
el:"#div"
})
</script>
</html>
Vue的生命周期#
状态 阶段周期
beforeCreate 创建前
created 创建后
beforeMount 载入前
mounted 载入后
beforeUpdate 更新前
updated 更新后
beforeDestroy 销毁前
destroyed 销毁后
Vue 异步操作#
- 在Vue中发送异步请求, 本质上还是AJAX. 我们可以使用axios这个插件来简化操作
- 使用步骤
- 引入axios核心js文件
- 调用axios对象的方法来发起异步请求
- 调用axios对象的方法来处理响应的数据
- axios常用方法
方法名 作用
get(请求的资源路径与请求的参数) 发起GET方式请求
post(请求的资源路径,请求的参数) 发起POST方式请求
then(reponse) 请求成功后的回调函数,通过resposnse获取响应的数据
catch(error) 请求失败后的回调函数,通过error获取错误信息
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>异步操作</title>
<script src="js/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
</head>
<body>
<div id="div">
{{name}}
<button @click="send()">发起请求</button>
</div>
</body>
<script>
new Vue({
el:"#div",
data:{
name:"张三"
},
methods:{
send(){
// // Get方式请求
// axios.get("testServlet?name="+this.name)
// .then(resp => {
// alert(resp.data);
// })
// .catch(error =>{
// alert(error)
// })
axios.post("testServlet","name="+this.name)
.then( resp =>{
alert(resp.data);
})
.catch( error =>{
alert(error)
})
}
}
})
</script>
</html>