IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Vue中使用组件的三大步骤 -> 正文阅读

[JavaScript知识库]Vue中使用组件的三大步骤

Vue中使用组件的三大步骤

一、第一步,定义组件(创建组件)

使用Vue.extend(options)创建,其中options和new Vue(options)时传入的那个options几乎一样,但也有点区别;
区别如下:

  1. el不要写,为什么? ——— 最终所有的组件都要经过一个vm的管理,由vm中的el决定服务哪个容器。
  2. data必须写成函数,为什么? ———— 避免组件被复用时,数据存在引用关系。
		// 1、定义组件(创建组件):定义student组件
        const student = Vue.extend({
        // 可以简写成如下形式:
        // const student = ({
            template: `
                <div>
                    <p style="color: red">学生姓名: {{ studentName }}</p>
                    <p>性别: {{ studentSex }}</p>
                    <button @click="showStudentName">点我显示学生姓名</button>
                </div>
            `,
            // el:'#root', //组件定义时,一定不要写el配置项,因为最终所有的组件
            // 都要被一个vm管理,由vm决定服务于哪个容器。
            data() {
                return {
                    studentName: "Luca",
                    studentSex: "男"
                }
            },
            methods: {
                showStudentName() {
                    alert(this.studentName);
                },
            },
        });

二、第二步,注册组件

1.局部注册:靠new Vue的时候传入components选项
2.全局注册:靠Vue.component(‘组件名’,组件)

		// 2、注册组件(全局注册)
        Vue.component('student', student);

        // 首先创建vm
        const vm = new Vue({
            el: "#app",
            // 2、注册组件(局部注册)
            components: {
                // 说明:第一个student为注册的组件名,第二个student为定义的组件名
                // student: student,
                student,
            },
        });

三、第三步,使用组件(写组件标签)

<组件名></组件名>

		<!-- 3、使用组件(书写组件的标签) -->
        <student></student>
        <hr>
        <student></student>
        <hr>
        <student></student>
四、完整代码如下
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>组件的基本使用</title>
    <script src="../js/vue.js"></script>
</head>
<body>
    <div id="app">
        <!-- 3、使用组件(书写组件的标签) -->
        <student></student>
        <hr>
        <student></student>
        <hr>
        <student></student>
    </div>
    <script>
        // 1、定义组件(创建组件):定义student组件
        const student = Vue.extend({
        // 可以简写成如下形式:
        // const student = ({
            template: `
                <div>
                    <p style="color: red">学生姓名: {{ studentName }}</p>
                    <p>性别: {{ studentSex }}</p>
                    <button @click="showStudentName">点我显示学生姓名</button>
                </div>
            `,
            // el:'#root', //组件定义时,一定不要写el配置项,因为最终所有的组件
            // 都要被一个vm管理,由vm决定服务于哪个容器。
            data() {
                return {
                    studentName: "Luca",
                    studentSex: "男"
                }
            },
            methods: {
                showStudentName() {
                    alert(this.studentName);
                },
            },
        });

        // 2、注册组件(全局注册)
        Vue.component('student', student);

        // 首先创建vm
        const vm = new Vue({
            el: "#app",
            // 2、注册组件(局部注册)
            components: {
                // 说明:第一个student为注册的组件名,第二个student为定义的组件名
                // student: student,
                student,
            },
        });
    </script>
</body>
</html>
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-09-23 11:22:20  更:2021-09-23 11:24:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 23:11:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码