Vue 組件通信 - 中央事件總線

Vue 漸進式JavaScript 框架 基于Vue2的學習筆記 - Vue組件通信 -?中央事件總線

目錄

中央事件總線

圖示

準備工作

設置頁面元素

創建組件

總結


中央事件總線

使用vue的監聽和觸發來實現中央事件總線方式。

on監聽 emit觸發,組件按鈕綁定點擊事件,在事件內部觸發。

圖示

準備工作

引入Vue及設置圖片樣式。

準備數據源通過小說網站拿到的json數據;

放在本地json文件中,等待之后請求訪問。

示例如下:

<style>.item img {width: 60px;}
</style>
<script src="../lib/vue.js"></script>

設置頁面元素

創建vue 解析盒子;創建按鈕綁定按鈕事件,渲染列表使用組件。

示例如下:

<div id="box"><button @click="handleAjax">點擊</button><data-item v-for="item in datalist" :key="item.book_id" :mydata="item" @event="handleEvent"></data-item><data-info :info="info"></data-info>
</div>

創建組件

創建列表組件和詳情組件,并使用中央事件總線綁定和監聽組件內部通信。

示例如下:

<script>let bus = new Vue()Vue.component("dataItem", {props: ["mydata"],template:`<div class="item">"<img :src="mydata.cover" />{{mydata.title}}<div><button @click="handleClick">詳情</button></div></div>`,methods: {handleClick() {bus.$emit("zu1", this.mydata.info)}}})Vue.component("dataInfo", {// 組件剛創建好,就開始訂閱data() {return {info: ""}},// 生命周期mounted() {bus.$on("zu1", (data) => {console.log("1111111", data)this.info = data})},template:`<div class="filminfo"> {{info}} </div>`})let vm = new Vue({el:"#box",data: {datalist: [],info : ""},methods: {handleAjax() {fetch("./json/ebook.json").then(res => res.json()).then(res => {console.log(res.data.data)this.datalist = res.data.data})}}})
</script>

效果如下:

總結

Vue 漸進式JavaScript 框架 基于Vue2的學習筆記 - Vue組件通信 -?中央事件總線

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/75254.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/75254.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/75254.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

5.0 WPF的基礎介紹1-Grid,Stack,button

WPF: Window Presentation Foundation. WPF與WinForms的對比如下&#xff1a; 特性WinFormsWPF技術基礎基于傳統的GDI&#xff08;圖形設備接口&#xff09;基于DirectX&#xff0c;支持硬件加速的矢量渲染UI設計方式拖拽控件事件驅動代碼&#xff08;簡單但局限&#xff09;…

QT軟件設計可考慮回答

在Qt應用中是否引入抽象類需要根據具體場景權衡&#xff0c;以下是分層建議&#xff1a; 建議采用抽象類的3個典型場景&#xff1a; 傳感器系統抽象&#xff08;強推薦&#xff09; class AbstractSensor { public:virtual ~AbstractSensor() default;virtual QVector<L…

pytorch學習(b站小土堆學習)

1 環境配置 參考鏈接 2. dir 和 help函數 dir()&#xff1a;用于查看某一模塊函數的方法 help()&#xff1a; 用于查看某方法的使用方法 3. dataset類實戰 利用Image對象打開圖片&#xff0c;利用os模塊的地址拼接組成圖片路徑 當我們用方括號訪問元素對象時&#xff0c;…

Unity TextMeshPro 實現文本逐字淡出效果

Unity TextMeshPro 實現文本逐字淡出效果 前言項目思路場景布置代碼編寫 前言 在處理角色對話時經常會用到一些文本動畫&#xff0c;正好記錄一下。使用 TextMeshPro&#xff0c;我們可以直接操作文本的頂點數據&#xff0c;實現諸如漸變、動畫等效果&#xff0c;為游戲界面和…

Mathtype無法插入到Word中

在word工具欄上有沒有出現Mtahtype&#xff0c;會出現以下兩種情況&#xff1a; 1. 沒有出現Mtahtype 2. 出現Mtahtype&#xff0c;但是點擊會出現彈窗 “ Couldnt find the MathPage.wll ” 解決方案 首先查看word版本是32位還是64位&#xff0c;這個位數是office安裝位數…

責任鏈模式_行為型_GOF23

責任鏈模式 責任鏈模式&#xff08;Chain of Responsibility Pattern&#xff09;是一種行為型設計模式&#xff0c;核心思想是將多個處理請求的對象連成一條鏈&#xff0c;請求沿鏈傳遞直到被處理。它像現實中的“多級審批流程”——請假或報銷時&#xff0c;申請會逐級提交給…

Qt圖形化界面為何總被“冷落“?

在Qt開發者的IDE中&#xff0c;Qt Designer總像一個被遺忘的角落——即便它有著直觀的拖拽式界面設計功能。通過分析GitHub上超過5000個Qt項目發現&#xff0c;僅有17%的項目使用.ui文件構建界面。這個數據背后&#xff0c;隱藏著開發者群體對GUI構建方式的集體選擇。我們不禁要…

SQL Server從安裝到入門一文掌握應用能力。

本篇文章主要講解,SQL Server的安裝教程及入門使用的基礎知識,通過本篇文章你可以快速掌握SQL Server的建庫、建表、增加、查詢、刪除、修改等基本數據庫操作能力。 作者:任聰聰 日期:2025年3月31日 一、SQL Server 介紹: SQL Server 是微軟旗下的一款主流且優質的數據庫…

簡單視圖函數

視圖函數 文章目錄 視圖函數[toc]一、什么是視圖函數二、簡單視圖函數三、返回錯誤視圖 一、什么是視圖函數 所謂視圖函數&#xff08;簡稱視圖&#xff09;&#xff0c;本質上就是一個Python函數&#xff0c;用于接收Web請求并且返回Web響應。Web響應可以包含很多類型&#x…

QT文件操作(QT實操學習3)

1.項目架構 1.UI界面 1.新建文本文檔 2.打開文件 3.另存為文件 2.mainwindow.h? #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QFileDialog> #include <QMessageBox> #include <QDebug> QT_BEGIN_NAMESPACE namespa…

HX324雙運算放大器:賦能萬物互聯時代的信號處理基石

一、運算放大器行業的技術演進與市場需求 在全球半導體市場規模突破6000億美元的背景下&#xff0c;模擬芯片作為電子系統的"感官神經"&#xff0c;正迎來智能化升級浪潮。據IC Insights數據顯示&#xff0c;2023年全球運算放大器市場規模達32.7億美元&#xff0c;其…

C++ 結構體與函數

一.結構體 1.概念&#xff1a; 結構體&#xff08;struct&#xff09;是一種用戶自定義復合數據類型&#xff0c;其中可以包含不同類型的不同成員 2.結構體的應用場景&#xff1a; 我們在使用多個變量描述一個對象時&#xff0c;雖然也可以做到&#xff0c;但是難免顯得雜亂…

Python數據可視化-第1章-數據可視化與matplotlib

環境 開發工具 VSCode庫的版本 numpy1.26.4 matplotlib3.10.1 ipympl0.9.7教材 本書為《Python數據可視化》一書的配套內容&#xff0c;本章為第1章 數據可視化與matplotlib 本文主要介紹了什么是數據集可視化&#xff0c;數據可視化的目的&#xff0c;常見的數據可視化方式…

ESLint報錯:Could not find config file.

如果你的ESLint的版本大于 8&#xff0c;同時使用 .eslinrc.js 和 .eslintignore 作為配置文件&#xff0c;且目前用的是 VSCODE &#xff0c;就有可能遇到報錯&#xff1a; Could not find config file. 這個是因為 VSCode 中 ESLint 插件的配置 eslint.useFlatConfig 的問題…

基于SpringBoot的“醫療設備管理系統”的設計與實現(源碼+數據庫+文檔+PPT)

基于SpringBoot的“醫療設備管理系統”的設計與實現&#xff08;源碼數據庫文檔PPT) 開發語言&#xff1a;Java 數據庫&#xff1a;MySQL 技術&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系統展示 系統總體功能模塊圖 系統E-R圖 系統登錄界面 …

WordPress漢主題

WordPress漢主題wphan.com(以下簡稱WP漢主題)是一個專注于WordPress中文主題與插件開發的專業團隊。該團隊致力于為中文用戶提供高質量的WordPress主題和插件資源&#xff0c;幫助用戶輕松創建專業且吸引人的網站。 WP漢主題提供多種功能豐富的WordPress主題&#xff0c;涵蓋博…

arthas之jvm相關命令

文章目錄 1. dashboard2. thread線程相關3. jvmTHREAD相關文件描述符相關 4. sysprop5. 小結6. sysenv7. vmoption8. getstatic9. ognl10. 小結 1. dashboard 作用&#xff1a;顯示當前系統的實時數據面板&#xff0c;按q或ctrlc退出 數據說明 ID: Java級別的線程ID&#xff…

小米平板 4 Plus 玩機日志

在一次偶然中&#xff0c;我從一個角落中找到了這臺小米平板 4 Plus&#xff08;是的&#xff0c;現在正在用這個平板寫這篇文章&#xff09;。在找到她的時候&#xff0c;她已經奄奄一息了&#xff0c;即使按動那脆弱的電源鍵也沒有任何響應。 在給她補充能源后&#xff0c;她…

MSYS2學習筆記

前言 本文內容是MSys2 Documentation的學習筆記可以使用MSYS2編譯QGis 學習筆記 什么是MSYS2&#xff1f; MSYS2&#xff08;Minimal System 2&#xff09;是一個為Windows平臺打造的軟件開發環境和包管理系統&#xff0c;它結合了Cygwin的POSIX兼容層、Arch Linux的pacman…

gnvm切換node版本號

1. gnvm下載官網 GNVM - Node.js version manager on Windows by Go 2. 安裝 2.1 不存在 Node.js 環境 下載并解壓縮 gnvm.exe 保存到任意文件夾&#xff0c;并將此文件夾加入到環境變量 Path。 2.2 存在 Node.js 環境 下載并解壓縮 gnvm.exe 保存到 Node.js 所在的文件夾。 2.…