Vue|非单文件组件

这篇具有很好参考价值的文章主要介绍了Vue|非单文件组件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Vue|非单文件组件

传统网页一些不可避免的小问题:
1.网页JS、CSS等资源依赖关系混乱,不方便维护
2.代码复用率很低
使用组件将代码进行复用,简化项目结构,提高运行效率,便于维护

组件定义

组件即为实现应用中局部功能代码(css、html、js)和资源(mp3、mp4、字体资源)的集合
模块化:当应用中的JS都是以模块来编写的,那这个应用就是一个模块化的应用
组件化:当应用中的JS都是以组件来编写的,那这个应用就是一个组件化的应用

传统网页

传统网站如需要新建一个页面,需要头部、中间内容部分、底部,每次新建页面都得复制来一套,引用的外部样式也是如此;如果有一处需要更改,那么所复制的每个页面都需要更改,还有着遗漏某个隐藏极深的页面漏改的可能。

Vue|非单文件组件

组件

组件是独立和可复用的代码组织单元,组件系统是vue核心特性之一,它让开发者使用小型、独立和通常可复用的组件构建大型应用,使得前端开发的过程变成搭积木的过程。

Vue|非单文件组件

传统代码

实现步骤

新建一个页面并创建好页面容器及对应的Vue实例,在data中定义三个变量如下

Vue|非单文件组件

 data: function () {
	 return {
	       header:'页面头部',
	       content: '页面内容',
	       footer:'页面底部'
	   };
},

在页面中通过差值语法的方式将数据渲染展示

Vue|非单文件组件

<div class="box">{{header}}</div>
<hr />
<div class="box">{{content}}</div>
<hr />
<div class="box">{{footer}}</div>

Vue|非单文件组件

这样看上去也没有什么问题,影响貌似也不大,但是如果现在让你再实现一个页面,保持结构不变的同时修改数据,那是不是只能把这段代码复制粘贴呢?这样就违背了组件的作用,组件是把代码进行复用而不是复制

组件代码

定义组件

使用Vue.extend(option)创建,格式与new Vue时几乎一样,但是这里有两点要注意;
一是不需要写el,因为el最终是由vm来决定的、二是data必须写成函数,这样组件复用时互不干扰

Vue|非单文件组件

通过template字段直接将html编写在里面即可

const header = Vue.extend({
            template:`
                <div>
                    <span>{{header}}</span>
                </div>
            `,
            data(){
                return {
                    header:'页面头部'
                }
            }
        });

注册组件

局部注册

在new Vue中使用components选项即可实现组件局部注册

Vue|非单文件组件

// 创建vue实例
        const vm = new Vue({
            el: '#root',
            //2.组件注册
            components:{
                headercom:header,
                contentcom:content,
                footercom:footer,
            }
        });

使用局部注册时,如果页面上有两个容器对应着两个vm,那只有注册过的vm才能使用这个组件,如果另外一个vm需要使用也需要再次注册才能使用,但是这样代码又重复了,所以有了下面的全局注册

Vue|非单文件组件

全局注册

全局注册方法:使用Vue.component(‘’,‘’),它有两个参数,第一个是组件名,第二个组件的指向,也就是你定义好的组件

Vue|非单文件组件

Vue.component('name',name);

使用组件

定义跟注册好组件后即可在页面进行使用,通过编写组件标签的形式即可

Vue|非单文件组件

Vue|非单文件组件

<headercom></headercom>
<hr />
<contentcom></contentcom>
<hr />
<footercom></footercom>

避坑

1.组件注册时使用大小写命名会报错,同时组件名称不要使用一些html标签名称
2.components注册时单词拼写容易错误
3.单个vm中存在多个components文章来源地址https://www.toymoban.com/news/detail-456131.html

到了这里,关于Vue|非单文件组件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小白最近比较闲,于是整理了一些日常使用的VUE组件

        VUE中,给 Dom 元素动态添加样式。     比如判断通过页面传递过来的值和env文件中配置的值是否一致,来动态添加元素的类,同时类的样式在 Style 中已经写好。  此时动态类名需要在 Dom 元素加载完成前添加上,否则样式可能添加不上。  这种情况下可以在   computed

    2024年02月10日
    浏览(25)
  • 有一些东西必不可少(前后背包+二分/前缀和优化)

    题意: 给定n个物品,每个物品具有权值a[i],在这些物品里选出若干个物品,使得权值和=k,就说是一个合法的方案。对于一个物品,如果存在一个合法的方案,在这个方案中去掉它以后方案就变成不合法了,就说这个物品是“必要的”。求有多少个物品是必要的。 n=5000,k=50

    2024年02月08日
    浏览(29)
  • Windows传统取证的一些笔记

    前置技能基本大同小异,互联网上资源很多。甚至说不明白这些知识随便翻,一直翻下去也可能找到答案,但是了解这些基本知识可以节省很多时间,提高命中率。 用户目录 用于存储用户文件和配置,以此来区分不同用户的使用环境和权限。无论是本地用户还是网络用户,

    2024年02月04日
    浏览(17)
  • 一个简单的HTML网页——传统节日春节网页(HTML+CSS)

    🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (

    2024年01月21日
    浏览(47)
  • Axure网页端高交互组件库, 下拉菜单文件上传穿梭框日期城市选择器

    组件数量:共 11 套 兼容软件:Axure RP 9/10,不支持低版本 应用领域:web端原型设计、桌面端原型设计 本作品为「web端组件库」,高保真高交互 (带仿真功能效果);运用了动态面板、中继器、变量值,可以自定义数据;主要包括表单类和选择器,一共11套组件。 表单类有:输

    2024年02月04日
    浏览(50)
  • Axure网页端高交互组件库11套, 下拉菜单文件上传穿梭框日期城市选择器

    组件数量:共 11 套 兼容软件:Axure RP 9/10,不支持低版本 应用领域:web端原型设计、桌面端原型设计 本作品为「web端组件库」,高保真高交互 (带仿真功能效果);运用了动态面板、中继器、变量值,可以自定义数据;主要包括表单类和选择器,一共11套组件。 表单类有:输

    2024年01月17日
    浏览(33)
  • 制作一个简单HTML中华传统文化网页(HTML+CSS)

    🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (

    2024年02月08日
    浏览(50)
  • 制作一个简单HTML传统端午节日网页(HTML+CSS)7页 带报告

    ⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIV+CSS 布局制作,HTML+CSS网页设计期末课程大作业 | 传统春节网页设计 | 圣诞节节日发展 | 中秋 | 端午传统节日习俗庆祝 | 地区特色 | 网站模板 | 等网站的设计与制 | HTML期末大学生网页设计作业 HTML:结构 CSS:样式

    2024年02月09日
    浏览(41)
  • HTML网页制作代码大全——中华传统文化设计题材网站(html+css)

    🌩️ 精彩专栏推荐👇🏻👇🏻👇🏻 💂 作者主页: 【进入主页—🚀获取更多源码】 🎓 web前端期末大作业: 【📚HTML5网页期末作业 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (110套) 】 📔网站布局方面 :计划采用目前主流的、能兼容各大主

    2024年02月07日
    浏览(53)
  • 【学Vue就跟玩一样】组件-单文件组件

    单文件组件在实际开发中是经常使用的,那么如何创建一个单文件组件呢?那么本篇就来简单入一下单文件组件。 1.切换到你想要创建该文件的目录下,我这里切换的是desktop这个目录,当然,也可以根据自己需要来进行切换该命令为 cd 目录/文件名称 2.打开cmd,输入 npm conf

    2024年01月19日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包