<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width,initial-scale=1.0">

<title>vue-demo</title>

</head>

<body>

<div id="app">

<p> {{title}}</p>

<p v-if='showSub'> {{subTitle}}</p>

<div>

<input type="text" v-model="mytodo">

<button @click='handleClick'>添加,修改</button>

</div>

<ul>

<li v-for='todo in todos'>{{todo}}</li>

</ul>

</div>

<!-- built files will be auto injected -->

</body>

</html>

 

上面是index.html

用 v-model 指令在表单控件元素上创建双向数据绑定,v-model 会根据控件类型自动选取正确的方法来更新元素。

简单地说:当在输入框输入“你好”时,在main.js 文件里面的mytodo的值就变成了:’你好‘。

当我点击添加修改按钮的时候,通过事件绑定,执行main.js 文件里面的 handleClick ()方法,

通过: this.todos.push(this.mytodo);

todos:[

'吃饭',

'睡觉',

'写代码'

]

添加“你好”。

通过

 

<ul>

<li v-for='todo in todos'>{{todo}}</li>

</ul>

渲染出来。

然后又通过this.mytodo = '';

使得输入框变为空。

下面看main.js

 

new Vue({

el:"#app",

data:{

title:'hello vuejs',

subTitle:'Vue React Angular is good',

showSub:true,

mytodo:'',

todos:[

'吃饭',

'睡觉',

'写代码'

]

},

methods:{

handleClick(){

// push() 添加方法

this.todos.push(this.mytodo);

this.mytodo = '';

this.title = '您好,小程序';

}

}

}

)

 

运行截图:

 

微信公众号:

Logo

前往低代码交流专区

更多推荐