Vue组件模板的几种书写形式(3种)


Posted in Javascript onFebruary 19, 2020

1.第一种使用script标签

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  </head>
  <body>
    <div id="app">
      <test-component></test-component>
    </div>
    <script type="text/x-template" id="testComponent"><!-- 注意 type 和id。 -->
      <div>{{test}} look test component!</div>
    </script>
  </body>
  <script>
    //全局注册组件
    Vue.component('test-component',{
      template: '#testComponent', 
      data(){
       return{
        test:"hello"
       }
      }
    })

    new Vue({
      el: '#app'
    })
  </script>
</html>

注意:使用<script>标签时,type指定为text/x-template,意在告诉浏览器这不是一段js脚本,
浏览器在解析HTML文档时会忽略<script>标签内定义的内容。

2.第二种使用template标签

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title></title>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  </head>
  <body>
    <div id="app">
      <test-component></test-component>
    </div>

    <template id="testComponent">
      <div>look test component!</div>
    </template>
  </body>
  <script>

    Vue.component('test-component',{
      template: '#testComponent'
    })

    new Vue({
      el: '#app'
    })

  </script>
</html>

当然,如果template内容少的话,我们可以直接在组件中书写,而不需要用template标签。像下面这样:

Vue.component('test-component',{
    template:`<h1>this is test,{{test}}</h1>`,
    data(){
     return{
       test:"hello test"
       }
      }
  })

3.第三种 单文件组件

这种方法常用在vue单页应用中

创建.vue后缀的文件,组件Hello.vue,放到components文件夹中

<template>
 <div class="hello">
  <h1>{{ msg }}</h1>
 </div>
</template>

<script>
export default {
 name: 'hello',
 data () {
  return {
   msg: '欢迎!'
  }
 }
}
</script>
app.vue

<template>
 <div id="app">
  <img src="./assets/logo.png">
  <hello></hello>
 </div>
</template>

<script>

import Hello from './components/Hello'
export default {
 name: 'app',
 components: {
  Hello
 }
}
</script>

<style>
#app {
 font-family: 'Avenir', Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
 margin-top: 60px;
}
</style>

以上就是Vue组件模板的几种书写形式(3种)的详细内容,更多关于Vue 组件模板请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
JavaScript For Beginners(转载)
Jan 05 Javascript
javascript 操作select下拉列表框的一点小经验
Mar 20 Javascript
editable.js 基于jquery的表格的编辑插件
Oct 24 Javascript
图标线性回归斜着移动到指定的位置
Aug 16 Javascript
thinkphp中常用的系统常量和系统变量
Mar 05 Javascript
项目中常用的JS方法整理
Jan 30 Javascript
JavaScript框架Angular和React深度对比
Nov 20 Javascript
Vue2.5学习笔记之如何在项目中使用和配置Vue
Sep 26 Javascript
layUI实现三级导航菜单效果
Jul 26 Javascript
微信小程序云开发获取文件夹下所有文件(推荐)
Nov 14 Javascript
JavaScript canvas实现跟随鼠标事件
Feb 10 Javascript
vue使用wavesurfer.js解决音频可视化播放问题
Apr 04 Vue.js
详解Vue 单文件组件的三种写法
Feb 19 #Javascript
vue中 v-for循环的用法详解
Feb 19 #Javascript
vue 使用v-for进行循环的实例代码详解
Feb 19 #Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
Feb 19 #Javascript
ES6中new Function()语法及应用实例分析
Feb 19 #Javascript
es6中使用map简化复杂条件判断操作实例详解
Feb 19 #Javascript
JS继承定义与使用方法简单示例
Feb 19 #Javascript
You might like
PHP设计聊天室步步通
2006/10/09 PHP
PHP中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
Thinkphp 5.0实现微信企业付款到零钱
2018/09/30 PHP
Javascript中的delete介绍
2012/09/02 Javascript
DWR实现模拟Google搜索效果实现原理及代码
2013/01/30 Javascript
JavaScript中this的使用详解
2013/11/08 Javascript
jquery实现的下拉和收缩效果示例
2014/08/21 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
使用Script元素发送JSONP请求的方法
2016/06/12 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
JavaScript实现图像模糊化的方法实例
2017/01/15 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
深入理解js中的加载事件
2017/02/08 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
2017/05/12 Javascript
详解Vue.js Mixins 混入使用
2017/09/15 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
详解JavaScript栈内存与堆内存
2019/04/04 Javascript
Element PageHeader页头的使用方法
2020/07/26 Javascript
[57:47]Fnatic vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python读写二进制文件的方法
2015/05/09 Python
python利用Guetzli批量压缩图片
2017/03/23 Python
基于Python 装饰器装饰类中的方法实例
2018/04/21 Python
Django Web开发中django-debug-toolbar的配置以及使用
2018/05/06 Python
python分块读取大数据,避免内存不足的方法
2018/12/10 Python
Django外键(ForeignKey)操作以及related_name的作用详解
2019/07/29 Python
python通过对字典的排序,对json字段进行排序的实例
2020/02/27 Python
Python 多进程、多线程效率对比
2020/11/19 Python
北美最大的参茸药食商城:德成行
2020/12/06 全球购物
内部类的定义、种类以及优点
2013/10/16 面试题
求职简历自荐信范文
2013/10/21 职场文书
毕业生的求职信范文分享
2013/12/04 职场文书
客房部经理岗位职责
2015/02/02 职场文书
辞职信怎么写
2015/02/27 职场文书
入党介绍人意见2015
2015/06/01 职场文书
http通过StreamingHttpResponse完成连续的数据传输长链接方式
2022/02/12 Python
HTML中的表格元素介绍
2022/02/28 HTML / CSS