vue中如何判断请求状态码(关于VUE的编译作用域及slot作用域插槽问题)
vue中如何判断请求状态码
关于VUE的编译作用域及slot作用域插槽问题什么是插槽?插槽的指令为v-slot,它目前取代了slot和slot-scope,插槽内容,vue实例一套内容分发的api,将slot元素作为承载分发内容的出口。
插槽分为单个插槽,具名插槽,还有作用域插槽,前两种比较简单这里就不赘述了,今天的重点是讨论作用域插槽。
简单来说,前两种插槽的内容和样式皆由父组件决定,也就是说显示什么内容和怎样显示都由父组件决定;
作用域插槽的样式由父组件决定,内容却由子组件控制。简单来说:前两种插槽不能绑定数据,作用域插槽是一个带绑定数据的插槽。
下面给大家介绍VUE的编译作用域及slot作用域插槽问题,一起看看吧!
其实就是 如果有很多个组件 ,当你在组件 使用变量的时候 ,那么你变量的作用域其实就也是在他定义的代码中找,如果没找到,那么就报错,【这个很基础的 是人都看出的】
官方说:父组件模板的所有东西都会在父级作用域内编译;子 组件模板的所有东西都会在子级作用域内编译。
下面例子完美说明了:
作用域插槽是slot一个比较难理解的点这里需要细心理解:
我现在说下软件需求目标:
子组件中有一组数据:比如:pLanguages: ['JavaScript', 'Python', 'Swift', 'Go', 'C++'],我要他在子组件的插槽中 ,有的用列表显示,有的用 - 链接、有的用 * 链接。
先看源代码(未使用插槽,写死的,在这个代码中改写 使用插槽作用域):
源代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>购物车</title> <script src="js/vue.js"></script> </head> <body> <!-- 未使用插槽 下面模板是写死的 --> <template id="cpn"> <li> <ul> <li v-for=" item in pLanguages">{{item}}</li> </ul> </li> </template> <li id="app"> <cpn></cpn> </li> <script> const app = new Vue({ el: "#app", components: { 'cpn': { template: "#cpn", data() { return { pLanguages: ['JavaScript', 'Python', 'Swift', 'Go', 'C++'] } } } } }) </script> </body> </html>
那么如果用插槽:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>购物车</title> <script src="js/vue.js"></script> </head> <body> <!-- 使用 了 插槽 且 下面设置了 插槽slot 默认值 --> <template id="cpn"> <li> <slot> <!-- 已改动 --> <ul> <li v-for=" item in pLanguages">{{item}}</li> </ul> </slot> </li> </template> <li id="app"> <cpn></cpn> <!-- 使用默认值 列表的形式 --> <cpn> <!-- 已改动 --> <!-- 问题就在这里 我想要以 - 链接的方式展现cpn组件中data中的数据,我无法获取, 因为作用域,这里的作用域是Vue实例app的! 只能获取到Vue实例app的data! 所以 下面这句代码是错的!!! 所以怎么解决插槽代码获取子组件中的data呢? --> <span v-for="item in pLanguages">{{item + "-"}}</span> </cpn> </li> <script> const app = new Vue({ el: "#app", components: { 'cpn': { template: "#cpn", data() { return { pLanguages: ['JavaScript', 'Python', 'Swift', 'Go', 'C++'] } } } } }) </script> </body> </html>
代码已经在里面很详细的说明了,问题也标注出来了,简而言之:
因为不在子组件的作用域,怎么解决插槽代码获取子组件中的data呢?
解决方案: 利用slot作用域插槽
到此这篇关于VUE 的 编译作用域 以及 slot作用域插槽的文章就介绍到这了,更多相关vue作用域插槽内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- vue切换图片效果(Vue.js实现图片切换功能)
- vue封装一个功能函数(vue中利用mqtt服务端实现即时通讯的步骤记录)
- vue 父组件向子组件传值几种方法(Vue中父组件向子组件传递数据的几种方法)
- vue页面关闭前的执行(Vue 页面监听用户预览时间功能的实现代码)
- vue3.0 如何使用useroute(详解vue3中setUp和reactive函数的用法)
- vue重置密码(Vue 两个字段联合校验之修改密码功能的实现)
- vue3.0怎么往标签填数据(Vue3.0写自定义指令的简单步骤记录)
- vueelementui左侧菜单(Vue Element前端应用开发之动态菜单和路由的关联处理)
- vue插槽的分类(vue具名插槽的基本使用实例)
- vue 富文本图片上传(vue.js云存储实现图片上传功能)
- vue基础语法对象(浅析从面向对象思维理解Vue组件)
- vue自定义组件定义事件(基于Vue实现自定义组件的方式引入图标)
- vue前端打包发布教程(Vue项目打包、合并及压缩优化网页响应速度)
- vue监控对象变化(Vue之监听方法案例详解)
- vue使用elementui框架(总结Vue Element UI使用中遇到的问题)
- vue设置属性没响应(Vue.$set 失效的坑 问题发现及解决方案)
- 1天密接者猛增77人,患者轨迹透露危险信号 吉林市全面封闭管理(1天密接者猛增77人)
- 吉林舒兰 封城 15人确诊 276人隔离,出现跨省传播(吉林舒兰封城)
- 四月新番CP人气榜公布,《剃须》两度上榜,沙优不是女朋友(四月新番CP人气榜公布)
- 2019年外媒秋季新番动画角色CP排行榜,桐人和爱丽丝落榜(2019年外媒秋季新番动画角色CP排行榜)
- 新一小兰领衔 盘点动漫中的那些 远距离恋爱情侣(盘点动漫中的那些)
- 大事件 合肥四中火了(大事件合肥四中火了)
热门推荐
- python 链表操作(Python3实现的判断环形链表算法示例)
- C#中ToString()常见的格式
- sqlserver存储过程同步数据(SQL Server存储过程同时返回分页结果集和总数)
- 阿里云对象存储oss收费吗(阿里云存储服务OSS基本概念)
- django整合前端流程日志权限(使用Django开发简单接口实现文章增删改查)
- 微信小程序function怎么使用(微信小程序在{{ }}中直接使用函数的方法示例)
- mysql 索引表空间(MySQL如何构建数据表索引)
- win10怎么安装apache(apache启动失败怎么办 快速解决Win10系统apache启动失败的方法教程)
- 用php实现弹出消息提示框(php弹出提示框的是实例写法)
- SQL Server中如何将数据导出为XML或Json文件
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9