更简单的网页编程方法 - VueJS
120021. 本课介绍
在这节课中,你将学习以下内容:首先,认识VueJS是什么,为何要选择Vue以及VueJS在编程中的优势。接着,通过一个简单示例来学习VueJS的模板、变量和函数的编写方式,从而初步掌握VueJS编程的方法。
通过实际操作,你将使用VueJS改写一个计算器的代码。这样做的目的是为了体验VueJS编程相较于之前学习的03课中简单计算器代码的优势。
如果想用VueJS编写更为复杂的页面代码,可以进一步学习扩展阅读中的内容,深入了解VueJS模板语法、计算属性、监听属性以及组件等更多内容。
2. 什么是VueJS?
在之前的课程中,我们曾编写过一个简单的计算器。当需要修改HTML内容时,传统的方法是通过操作HTML标签来实现。然而,如果页面中有许多需要改变的地方,这种方式会变得非常繁琐。其实有更简单的编程方法,VueJS就其中的一种。
VueJS是在HTML、CSS和JavaScript语言基上开发的的前端框架,其实就是一套代码工具包,允许开发者将数据(变量)和模板进行关联,当数据发生变化时,网页会自动更新,无需手动操作HTML代码。VueJS简化了编写代码的工作,提高了开发效率。
3. VueJS的特点和优势
网页显示动态数据的原理,就是将动态数据填入到模板的指定位置,来显示出最终的网页内容,VueJS也是完成这样的一个过程,只是它的模板、脚本的写法有不同的地方。
打开菜鸟教程模板语法,
点击“尝试一下”,看到页面右边的显示的是message
的值。
从左边代码看VueJS模板和脚本的写法:
模板:{{ message }}
:把变量message
的值'Hello Vue.js!'
显示出来,不需要写语句获取变量的值。
脚本:
new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
}
})
这段代码的写法,表示这是一个用VueJS写的脚本,这里定义了变量 message
,它的值是'Hello Vue.js!'
。var app = new Vue({ })
叫做Vue实例,是VueJS的基本代码块。
通过尝试发现:VudJS的变量和模板互相关联,当变量发生变化时,网页会自动更新,无需手动操作HTML代码。
继续在这段代码的里面增加一个输入框,“点击运行”:
当你在页面上输入新内容,你的输入会立刻被保存到变量里,v-model="message"
表示把这个输入框的值保存到变量message
中,页面自动更新。
再继续在这段代码里面增加一个按钮和函数:
点击点我
按钮后,变量message
值被函数changeMessage
改变了,模板中的值{{ message }}
相应发生变化,页面自动更新。
通过用VueJS编写的这个例子,总结出VueJS的特点和优势:
创建了变量里的数据与页面上显示的内容之间的关系,当页面上输入新内容,会同步保存到脚本中的变量里;当脚本变量发生变化,页面上的内容跟着改变。
4. 认识VueJS的模板、变量和函数
学习用VueJS来编程,从最基本的模板、变量、函数的写法学习VueJS:
VueJS模板的写法:{{}}
VueJS使用一对花括号{{}}来表示模板,用于将数据动态地显示在页面上。
{{}}里面是变量, 这个变量可以在VueJS的变量
data:{}
里面找到(下面会学习data:{}
的写法),用VueJS可以很方便的通过变量来控制需要显示的内容。例如:
<div id="app">
<input v-model="message"><br>
<p>{{ message }}</p>
<button v-on:click="changeMessage">点我</button>
</div>
{{ message }}
这里{{}}
里面的message
是变量,通过这个写法可以直接在模板里面取到变量里面的数据。
VueJS变量的写法:data
- Vue实例
var app = new Vue({})
的里面出现data:{}
,这就是VueJS变量的写法。 - VueJS变量
data:{}
,{}
里面放的各种变量,不需要用Var
定义变量,直接可以用。例如:
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
},
})
在data:{}
里面,定义了message
是一个变量,在它里面放入了字符串'Hello Vue!'
。
VueJS函数的写法:method
- 在Vue实例中,
method:{}
是用来定义函数的,{}
里面可以放多个函数,出现function()
,就表示这是一个函数,例如:
var app = new Vue({
el: '#app',
methods: {
changeMessage: function() {
this.message = '点击按钮改变message';
}
}
})
changeMessage: function(){}
,这里函数名字changeMessage
放在了function
的前面, 加上:
, 后面跟着函数function() {}
,function() {}
写法和Javascript的一样。
5. 项目:用VueJS改写计算器
了解了使用VueJS最基本的编程方法,现在通过VueJS改写的简单计算器代码的项目,在实操中更深入学习这些写法。
在使用VueJS编程之前,要引入VueJS已经写好的代码库加入到你的代码里,这种做法叫做引用。如果不加入这行代码,用VueJS的写法就会报错。会引用别人写好的代码,是程序员的必备技能。
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
复制下面的代码在Vscode里面生成文件:
<!DOCTYPE html>
<html>
<script src="https://cdn.staticfile.org/vue/2.7.0/vue.min.js"></script>
<div id="app">
<input v-model="x"><br>
<button @click="b()">=</button><input v-model="r"><br>
<button @click="a(1)">1</button>
<button @click="a(2)">2</button>
<button @click="a(3)">3</button><br>
<button @click="a(4)">4</button>
<button @click="a(5)">5</button>
<button @click="a(6)">6</button><br>
<button @click="a(7)">7</button>
<button @click="a(8)">8</button>
<button @click="a(9)">9</button><br>
<button @click="a('+')">+</button>
<button @click="a(0)">0</button>
<button @click="a('-')">-</button>
</div>
<script>
new Vue({
el: '#app',
data: {
r: "",
x: ""
},
methods: {
a: function (x) {
this.r = this.r+x;
},
b: function () {
this.x = eval(this.r).toString();
}
}
})
</script>
</html>
打开浏览器文件会看到下面的页面:
把上面的代码与04课用HTML和Javacriptd写的简单计算器的代码进行对比,会发现什么:
- 代码行数减少了
- 脚本中不需要用HTML改变内容的语句,减少了代码编写量。
<input v-model="r">
输入框直接显示变量r
的值。
VueJS简化了代码的复杂性,这是VueJS的优势, 编程变得简单了。
6. 扩展阅读:读文档,自学VueJS的模板渲染
上面介绍了最简单的VueJS的模版语法,如果要写出丰富的页面,还需要了解更多模板的写法,VueJS称这些写法叫做模板语法、模板渲染。
打开VueJS官网 看到左边栏,里面有模板语法、条件渲染、列表渲染等,学习更多模版渲染的内容。
7. 扩展阅读:读文档,自学计算属性、监听属性和组件
VueJS 的计算属性、监听属性能够代替复杂的JavaScript逻辑,解决重复计算和监听数据变化的问题,简化复杂操作,点开下列文档学习计算属性和监听属性的内容。
VueJS 组件(Component)是 VueJS 最强大的功能之一。组件可以扩展 HTML 元素,封装可重复使用的代码,能够减少代码的编写量,点开下列文档学习组件的内容。
- 菜鸟教程VueJS组件