电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

vue基礎知識--axios合并請求和slot

瀏覽:2日期:2023-01-16 10:25:12

一、axios合并請求

export default { data(){ return {} }, created(){ function getMsg(res1,res2){ console.log(res1) console.log(res2) } this.$axios.all([this,axios.post(’URL’,’key=value’),this.axios.get(’URL’) ]) .then(this.$axios.spread(getMsg)) //分發響應 .catch(err => { console.log(err) }) }}

這樣可以實現發送兩個請求,只有所有都成功,才算是成功。只要有一個失敗,就算是失敗。

二、插槽slot

1.基本用法

插槽的出現使得我們可以在使用子組件時在子組件內新增內容,而不僅僅是簡單的使用,呈現出多樣化的子組件。

<navigation-link> Your Profile</navigation-link>

當我們使用子組件navigation時,在子組件中寫入一些內容,但是如果我們子組件的template中沒有一個插槽slot,那么我們寫入的Your Profile沒有的地方放,子組件怎么知道要放在哪里呢,不知道放在哪里,所以它就干脆不放了,會把寫的內容拋棄,大家就當無事發生過,子組件里怎么寫,它就怎么呈現,全然不顧你在使用時寫入的東西,當做沒有看見。但是如果我們在子組件中寫入了一個插槽slot,那么我們傳入的內容將會被在這個插槽處呈現。像下面這樣

<a v-bind:href='http://www.hdgsjgj.cn/bcjs/url' rel='external nofollow' rel='external nofollow' class='nav-link'> <slot></slot></a>

渲染出來的結果將是:

<a v-bind:href='http://www.hdgsjgj.cn/bcjs/url' rel='external nofollow' rel='external nofollow' class='nav-link'> Your Profile</a>

2.具名插槽

有時候,我們需要在子組件中放置多個內容,那么你只有一個slot,它只能全部放在這里(其實我也不知道是不是這樣我沒有試過),如果你有多個slot,它怎么知道哪個內容要放在哪個slot,按順序放嗎?不是的(其實我也不知道是不是)。正確的做法就是使用具名插槽。所謂具名插槽就是一個帶有name的slot。也就是下面這樣

<!--base-layout.vue--><div class='container'> <header> <slot name='header'></slot> </header> <main> <slot></slot> <!--默認插槽--> </main> <footer> <slot name='footer'></slot> </footer></div>

然后在使用上面這個子組件時像下面這樣

<base-layout> <template slot='header'> <h1>Here might be a page title</h1> </template> <p>A paragraph for the main content.</p> <p>And another one.</p> <template slot='footer'> <p>Here’s some contact info</p> </template></base-layout>

在使用時,通過一個具有slot屬性的標簽,屬性值對應slot的name,將內容放到子組件的相應位置上去。

我們注意到,里面有一個沒有指定name的slot,它就是默認插槽。所有在使用子組件時傳入的東西,只要沒有指定slot=’slot的name’,就都會放在這里。

我們還注意到,這里用的一個叫做template的標簽,一定要用它嗎?不是的,也可以直接放在h1或者p上面,像下面這樣

<base-layout> <h1 slot='header'>Here might be a page title</h1> <p>A paragraph for the main content.</p> <p>And another one.</p> <p slot='footer'>Here’s some contact info</p></base-layout>

但是,如果你并不只有一個h1,你還有其他內容也要一起放在這個插槽里,那你能怎么辦,為每一個要放在插槽里的標簽加slot嗎?太麻煩啦!所以就一起放在template里面,給template加slot咯。

3.插槽的默認內容

有時候,我們也需要為某個插槽指定默認內容。比如一個按鈕,默認顯示是 submit ,但我們有時在復用它的時候,我們又想改成別的,這個時候,就可以把這個按鈕的 submit 放在slot里面,然后在使用這個子組件的時候,放你要改的東西去改變它。如果沒有放,那就是默認的 submit。

<button type='submit'> <slot>Submit</slot> <!--Submit就是插槽的默認內容--></button>

4.作用域

在插槽中傳值時,如果想要使用數據,這個數據應該是父組件的,而不能是子組件的。也就是說是使用子組件的那個組件的data。

<navigation-link url='/profile'> Logged in as {{ user.name }} </navigation-link>

這里的user不是navigation-link的,而是父組件的

牢記一條準則:父組件模板的所有東西都會在父級作用域內編譯;子組件模板的所有東西都會在子級作用域內編譯。

5.作用域插槽 【2.1.0+ 新增】(我也不知道為什么要叫這個名字,和插槽的作用于太像,很容易搞混啊)

上面我們提到,插槽是具有作用于的,且當我們在使用子組件時,是無法獲取子組件的數據的。而有時,我們又需要獲取它,那么應該怎么辦呢?

比如一個名為todo-list的子組件,它的內容如下:

<ul> <li v-for='todo in todos' v-bind:key='todo.id'> {{ todo.text }} </li></ul>

這時,這里所獲取的數據是子組件自己內部的數據。而我們在使用這個子組件時是無法獲取它的(當然我們可以用以前學習過的父子組件間的通訊來實現),我們可以利用slot來達到這個目的

<ul> <li v-for='todo in todos' v-bind:key='todo.id' > <!-- 我們為每個 todo 準備了一個插槽,--> <!-- 將 `todo` 對象作為一個插槽的 prop 傳入。--> <slot v-bind:todo='todo'> <!-- 回退的內容 --> {{ todo.text }} </slot> </li></ul>

然后當我們使用todo-list組件的是時候,可以這樣做

<todo-list v-bind:todos='todos'> <!-- 將 `slotProps` 定義為插槽作用域的名字 --> <template slot-scope='slotProps'> <!-- 為待辦項自定義一個模板,--> <!-- 通過 `slotProps` 定制每個待辦項。--> <span v-if='slotProps.todo.isComplete'>✓</span> {{ slotProps.todo.text }} </template></todo-list>

這時即使我們是在父組件中,也還是可以獲取到子組件的數據。其中slotProps只是一個名字,我們用slot-scope指定為什么名字,就可以在下面用xx.來獲取子組件的data在 2.5.0+,slot-scope 不再限制在 <template> 元素上使用,而可以用在插槽內的任何元素或組件上。

以上就是詳解vue中的axios和slot的詳細內容,更多關于vue axios和slot的資料請關注好吧啦網其它相關文章!

標簽: IOS
相關文章:
主站蜘蛛池模板: 干洗加盟网-洗衣店品牌排行-干洗设备价格-干洗连锁加盟指南 | 全国国际学校排名_国际学校招生入学及学费-学校大全网 | 湿地保护| 济南ISO9000认证咨询代理公司,ISO9001认证,CMA实验室认证,ISO/TS16949认证,服务体系认证,资产管理体系认证,SC食品生产许可证- 济南创远企业管理咨询有限公司 郑州电线电缆厂家-防火|低压|低烟无卤电缆-河南明星电缆 | 清水-铝合金-建筑模板厂家-木模板价格-铝模板生产「五棵松」品牌 | 东莞工作服_东莞工作服定制_工衣订做_东莞厂服 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 耳模扫描仪-定制耳机设计软件-DLP打印机-asiga打印机-fitshape「飞特西普」 | 膜结构_ETFE膜结构_膜结构厂家_膜结构设计-深圳市烨兴智能空间技术有限公司 | 铣刨料沥青破碎机-沥青再生料设备-RAP热再生混合料破碎筛分设备 -江苏锡宝重工 | LOGO设计_品牌设计_VI设计 - 特创易 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 北京开业庆典策划-年会活动策划公司-舞龙舞狮团大鼓表演-北京盛乾龙狮鼓乐礼仪庆典策划公司 | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | 质检报告_CE认证_FCC认证_SRRC认证_PSE认证_第三方检测机构-深圳市环测威检测技术有限公司 | 玻纤土工格栅_钢塑格栅_PP焊接_单双向塑料土工格栅_复合防裂布厂家_山东大庚工程材料科技有限公司 | 原色会计-合肥注册公司_合肥代理记账公司_营业执照代办 | 宽带办理,电信宽带,移动宽带,联通宽带,电信宽带办理,移动宽带办理,联通宽带办理 | 私人别墅家庭影院系统_家庭影院音响_家庭影院装修设计公司-邦牛影音 | 电主轴,车床电磨头,变频制动电机-博山鸿达特种电机 | 壹作文_中小学生优秀满分作文大全| 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 磷酸肌酸二钠盐,肌酐磷酰氯-沾化欣瑞康生物科技 | 送料机_高速冲床送料机_NC伺服滚轮送料机厂家-东莞市久谐自动化设备有限公司 | 微波萃取合成仪-电热消解器价格-北京安合美诚科学仪器有限公司 | 数字展示在线_数字展示行业门户网站| 西安耀程造价培训机构_工程预算实训_广联达实作实操培训 | 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 常州企业采购平台_常州MRO采购公司_常州米孚机电设备有限公司 | CCC验厂-家用电器|服务器CCC认证咨询-奥测世纪 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | 青岛美佳乐清洁工程有限公司|青岛油烟管道清洗|酒店|企事业单位|学校工厂厨房|青岛油烟管道清洗 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 上海小程序开发-小程序制作-上海小程序定制开发公司-微信商城小程序-上海咏熠 | 管理会计网-PCMA初级管理会计,中级管理会计考试网站 | 开云(中国)Kaiyun·官方网站 - 登录入口 | 屏蔽服(500kv-超高压-特高压-电磁)-徐吉电气 | 自动气象站_农业气象站_超声波气象站_防爆气象站-山东万象环境科技有限公司 | 时代北利离心机,实验室离心机,医用离心机,低速离心机DT5-2,美国SKC采样泵-上海京工实业有限公司 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 高中学习网-高考生信息学习必备平台 | 小型气象站_车载气象站_便携气象站-山东风途物联网 |