DOCTYPE html>
<html lang="en">
<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">
<title>Documenttitle>
<script src="../vue/vue.js">script>
head>
<body>
<div id="root"><h1>你好,{{name}}h1>div>
<script>
Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。
//el的两种写法
/*const v = new Vue({
// el:'#root', //第一种写法
data:{
name:'尚硅谷',
}
})
console.log(v)
v.$mount("#root") //第二种写法。把模板交给Vue实例,Vue实例解析模板然
//后再把数据放回去。这里放就是挂载的意思,就是mount这个词。*/
//data的两种写法
new Vue({
el:'#root',
//data的第一种写法:对象式
/*data:{
name:'尚硅谷'
}*/
//data的第二种写法:函数式 返回数据必须用对象形式
//组件的时候必须用麻烦的函数式
data(){ //不能写成箭头函数
//function是Vue帮我调用的
console.log('@@@',this)//此处的this是Vue实例对象
return{
name:'尚硅谷'
}
}
// data:function(){ //不能写成箭头函数
// //function是Vue帮我调用的
// console.log('@@@',this)//此处的this是Vue实例对象
// return{
// name:'尚硅谷'
// }
// }
// data:()=>{
// console.log('@@@',this)//this是window
// return{
// name:'尚硅谷'
// }
// }
})
script>
body>
html>
data与el的2种写法
1.el有2种写法
(1).new Vue时候配置el属性。
(2)先创建Vue实例,随后再通过vm.$mount(‘#root’)指定el的值。
2.data有2种写法
(1).对象式
(2).函数式
如何选择:目前哪种写法都可以,以后学习到组件时,data必须使用函数式,否则会报错。
3.一个重要的原则:
由Vue管理的函数,一定不要写箭头函数,一旦写了箭头函数,this就不再是Vue实例了。