Vue - Hello World 初体验

╰半橙微兮° 2022-12-19 01:23 189阅读 0赞

推荐:Vue汇总

Vue - Hello World 初体验

介绍

Vue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。

尝试Vue最简单的方法是使用Hello World例子。可以创建一个.html文件,然后通过如下方式引入Vue:

  1. <!-- 开发环境版本,包含了有帮助的命令行警告 -->
  2. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

或者:

  1. <!-- 生产环境版本,优化了尺寸和速度 -->
  2. <script src="https://cdn.jsdelivr.net/npm/vue"></script>

不推荐新手直接使用vue-cli,尤其是在你还不熟悉基于Node.js的构建工具时。

上面是摘自官网的原话。

代码

如果不用Vue来实现Hello World,即用原生Javascript来实现,可以这样来写:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. </head>
  7. <body>
  8. <div id="div"></div>
  9. </body>
  10. </html>
  11. <script> var dom = document.getElementById('div'); dom.innerHTML = 'Hello World'; // 或者 // dom.innerText = 'Hello World'; </script>

就是通过DOM来进行操作,innerHTMLinnerText的区别自行百度。

使用Vue来实现,可以这样写:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  7. </head>
  8. <body>
  9. <div id="div">{
  10. {text}}</div>
  11. </body>
  12. </html>
  13. <script> var vue = new Vue({ el: '#div', data: { text: 'Hello World' } }) </script>

开一下VPN将Vue下载下来。

  1. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

由下图可知,使用Vue来实现是成功了。
在这里插入图片描述
现在来介绍一下el属性。

  • 类型:string或者Element。
  • 限制:只在用new创建实例时生效。
  • 详细:提供一个在页面上已存在的DOM元素作为Vue实例的挂载目标。可以是CSS选择器也可以是一个HTML Element实例

可以是CSS选择器,即可以通过id(上面代码就是通过id来进行挂载)或者class来进行挂载,也可以是一个HTML Element实例,即通过标签名来进行挂载。

通过class来进行挂载。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  7. </head>
  8. <body>
  9. <div class="div">{
  10. {text}}</div>
  11. </body>
  12. </html>
  13. <script> var vue = new Vue({ el: '.div', data: { text: 'Hello World' } }) </script>

同样是可以的。
在这里插入图片描述
通过标签名来进行挂载。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  7. </head>
  8. <body>
  9. <div>{
  10. {text}}</div>
  11. </body>
  12. </html>
  13. <script> var vue = new Vue({ el: 'div', data: { text: 'Hello World' } }) </script>

同样是可以的。
在这里插入图片描述

但其实还是推荐通过id来进行挂载,因为每一个标签的id是唯一的,其他的两种方式对应的标签都有可能不唯一,这样可能会造成意想不到的后果。

而这里的data属性是一个对象,里面可以定义一些键值对key:value,然后通过{ {key}}这种方式就可以使用这个键值对了,其实还有很多种方式可以使用这些键值对(不同的应用场景下),这里先不介绍,之后的篇章用到了再进行介绍。

这里还没有看到Vue的方便之处,如果需要显示Hello World5秒后再显示Hello Kaven,用原生Javascript可以这样写:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. </head>
  7. <body>
  8. <div id="div">{
  9. {text}}</div>
  10. </body>
  11. </html>
  12. <script> var dom = document.getElementById('div'); dom.innerHTML = 'Hello World'; setTimeout(function () { dom.innerHTML = 'Hello Kaven'; },5000); </script>

很显然这样是正确的。
在这里插入图片描述

5秒后。
在这里插入图片描述
而用Vue来实现,不需要直接操作DOM:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8" />
  5. <title>Hello World</title>
  6. <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  7. </head>
  8. <body>
  9. <div id="div">{
  10. {text}}</div>
  11. </body>
  12. </html>
  13. <script> var vue = new Vue({ el: '#div', data: { text: 'Hello World' } }) setTimeout(function () { vue.$data.text = 'Hello Kaven'; },5000); </script>

结果也是一样的,$这个符号在之后的篇章会经常看到。

写博客是博主记录自己的学习过程,如果有错误,请指正,谢谢!

发表评论

表情:
评论列表 (有 0 条评论,189人围观)

还没有评论,来说两句吧...

相关阅读

    相关 TestNG-Hello World

    最近因为工作需要,要了解TestNG并应用到项目的单元测试和集成测试中。准备写点文章,记录一下对TestNG的使用和了解。这篇文章是这个系列的第一篇,简要介绍TestNG是什么