我的编程空间,编程开发者的网络收藏夹
学习永远不晚

vue项目是不是只有一个vue实例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

vue项目是不是只有一个vue实例

这篇“vue项目是不是只有一个vue实例”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue项目是不是只有一个vue实例”文章吧。

不是,vue项目中可以包含多个vue实例。在vue项目中,一般只有一个VUE实例在main.js中定义,其他都是vue组件实例。Vue是由一个个实例构建而成的,一个组件就是一个Vue的实例,每个组件内部都可以写属性,因此每一个组件都是一个Vue的实例。

不是,vue项目中可以包含多个vue实例。

Vue是由一个个实例构建而成的,一个组件就是一个Vue的实例,每个组件内部都可以写属性,因此每一个组件都是一个Vue的实例。在vue项目中,一般只有一个VUE实例在main.js中定义,其他都是vue组件实例。

Vue 实例

使用 Vue 写项目时,最重要的是 Vue 实例,它提供了学习 Vue 的方向,逐步掌握与 Vue 实例相关的「特性」是我们的终极目标。

首先,在一个 html 文件中加载 vue.js,可以通过 script 标签直接加载 vue.js 文件:

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Vue实例</title>    <script class="lazy" data-src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script></head><body><body>

用浏览器打开这个页面,在 console 中输入 Vue ,你会发现 Vue 其本质是一个函数:

vue项目是不是只有一个vue实例

其实 Vue 是一个构造函数,可以被看作是一个“类”,通过 new 创建它的实例。那究竟在一个页面中能创建多少个实例呢?

通常在一个页面中只创建一个 Vue 实例:

<body>    <div id="app">Hello {{ msg }}</div>    <script>        const vm = new Vue({            el: '#app',            data: function () {                return {                    msg: '前端小课'                }            }        });</script></body>

创建一个 Vue 实例时传入一个「定制」的对象,我们可以把上面的对象换一种写法:

<body>    <div id="app">Hello {{ msg }}</div>    <script>        const obj = {            el: '#app',            data: function () {                return {                    msg: '前端小课'                }            }        }        const vm = new Vue(obj);</script></body>

在 obj 这个对象中,有个属性 el,表示给 Vue 实例提供的「模板」,也就是说当你创建一个实例时,要告诉 Vue 渲染的 HTML 是什么,如何把 HTML 中要做的事情与 obj 建立某种连接。比如 HTML 模板中要显示的数据如何和 Vue 实例的数据建立关联,如何响应 HTML 模板中要触发的事件。要建立关联,必须在模板与Vue实例之间作出约定。

el 可以是一个 选择器,也可以是一个 HTMLElement (打通 DOM 的设计架构 )实例。可以把 el 写成:

el: document.getElementById('app'),

也可以是任意一个选择器:

 el: 'div',

下面这个显示结果是什么?

vue项目是不是只有一个vue实例

最终发现 title 这个值 “早上好,打卡!” 并没有被渲染到 HTML 上,这是因为 title 所在的 div 并没有在 Vue 实例的作用范围内,也就是说 Vue 实例只能作用到创建实例时所在的模板(比如通过 el 指向的 模板):

vue项目是不是只有一个vue实例

其实,一个页面可以创建多个 Vue 实例,比如下面的代码创建了 3 个 Vue 实例,发现可以正常工作:

<body>    <div id="app">        <h2>{{ msg }}</h2>    </div>    <div id="app-body">        <h5>{{ title }}</h5>    </div>    <div class="app-footer">        <h5>{{ footer }}</h5>    </div>    <script>        const vm = new Vue({            el: '#app',            data: function () {                return {                    msg: "欢迎来到前端小课",                }            }        });</script>    <script>        const vmBody = new Vue({            el: '#app-body',            data: function () {                return {                    title: "Vue 实例讲解"                }            }        });</script>    <script>        const vmFooter = new Vue({            el: '.app-footer',            data: function () {                return {                    footer: "感谢阅读",                }            }        });</script></body>

用浏览器打开,结果如下:

vue项目是不是只有一个vue实例

这个例子让我想到了组件,「组件是可复用的 Vue 实例」,这种写法有点像组件,每一个 Vue 实例看成是一个组件。

我们再看一个例子 —— Vue 实例中再嵌套一个 Vue 实例:

<body>    <div id="app">        <h2>{{ msg }}</h2>        <!-- 这里不能声明一个新的 Vue 实例 -->        <div id="app-body">            <h5>会渲染吗?{{ title }}</h5>        </div>    </div>    <script>        const vm = new Vue({            el: '#app',            data: function () {                return {                    msg: "欢迎来到前端小课",                    title: "#app - Vue 实例讲解"                }            }        });</script>    <script>        const vmBody = new Vue({            el: '#app-body',            data: function () {                return {                    title: "#app-body - Vue 实例讲解"                }            }        });</script></body>

渲染结果为,发现结果使用的是 #app 实例中的数据:

vue项目是不是只有一个vue实例

Vue 实例中还有很多 API,每一个 API 都需要我们逐步学习。比如生命周期函数,计算属性,定义方法,过滤器:

vue项目是不是只有一个vue实例

vue项目是不是只有一个vue实例

以上就是关于“vue项目是不是只有一个vue实例”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

vue项目是不是只有一个vue实例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

vue项目是不是只有一个vue实例

这篇“vue项目是不是只有一个vue实例”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue项目是不是只有一个vue实例”文
2023-07-04

vue项目只有一个vue实例么

不是,vue项目中可以包含多个vue实例。在vue项目中,一般只有一个VUE实例在main.js中定义,其他都是vue组件实例。Vue是由一个个实例构建而成的,一个组件就是一个Vue的实例,每个组件内部都可以写属性,因此每一个组件都是一个Vue的实例。
2023-05-14

怎么在vue项目中实现一个竖向表格

怎么在vue项目中实现一个竖向表格?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。为什么要使用VueVue是一款友好的、多用途且高性能的JavaScript框架,
2023-06-14

vue中为什么在组件内部data是一个函数而不是一个对象

这篇文章主要介绍了vue中为什么在组件内部data是一个函数而不是一个对象,本文通过示例代码给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-05-17

Vue中mixins的使用方法及实际项目应用是什么

这篇文章主要介绍了Vue中mixins的使用方法及实际项目应用是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue中mixins的使用方法及实际项目应用是什么文章都会有所收获,下面我们一起来看看吧。(1)
2023-07-05

vue项目实现一键网站换肤效果实例(webpack-theme-color-replacer的使用)

换皮肤一般都是点击一个按钮弹出一些皮肤的选项,选中选项后皮肤生效,下面这篇文章主要给大家介绍了关于vue项目实现一键网站换肤效果的相关资料,文中主要介绍的是webpack-theme-color-replacer的使用,需要的朋友可以参考下
2023-02-13

如何在vue项目中利用饿了么UI实现一个teambition筛选功能

这篇文章主要为大家详细介绍了如何在vue项目中利用饿了么UI实现一个teambition筛选功能,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:Vue的优点Vue具体轻量级框架、简单易学、双向数据绑定、组件化、
2023-06-06

vue项目打包之后生成一个可修改IP地址文件怎么实现

这篇“vue项目打包之后生成一个可修改IP地址文件怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue项目打包之后生
2023-07-05

vue项目使用定时器每隔几秒运行一次某方法代码实例

有时候在项目中我们经常需要设置简单的倒计时功能,这个可以通过定时器来实现,下面这篇文章主要给大家介绍了关于vue项目使用定时器每隔几秒运行一次某方法的相关资料,需要的朋友可以参考下
2023-05-18

哪个不是云服务器ecs实例类型的特点之一

以下是云服务器ECS实例类型的一些特点:高可用性:云服务器ECS采用多台计算机共享同一个存储设备,这样它们就可以通过同一台计算机上的同一个软件来实现数据一致性。高可用性是指当某个实例出现故障时,其它实例能够立即接管并开始处理业务。快照功能:云服务器ECS使用高性能的文件系统或数据库来存储数据,这些文件或数据库可以在不经常访问的情况下存储在本地,从而提高了实时数据访问的速度和可靠性。支持分布式架构:云服务器...
2023-10-27

哪个不是云服务器ecs实例类型的功能特点之一

1.弹性扩展性弹性计算服务(ElasticComputeService,ECS)是阿里云提供的一种云服务器实例类型。它具有多种功能特点,其中一个不是弹性扩展性。弹性扩展性是云服务器ECS实例类型的一个重要功能特点之一。它允许用户根据实际需求快速扩展或缩减计算资源。通过调整实例数量或配置规格,用户可以轻松应对业务高峰期或低谷期的需求变化,提高系统的灵活性和可用性。2.高可靠性云服务器ECS实例类型还具有高可靠性的功能特点...
2023-10-27

C++单例模式实例化一个对象不全部使用static的原因是什么

今天小编给大家分享一下C++单例模式实例化一个对象不全部使用static的原因是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一
2023-06-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录