Vue.js 中的全局事件總線——Vue $bus

Vue.js 提供了一種全局事件總線的機制——Vue $bus。 $bus 實例中可以訂閱、發佈、取消訂閱觸發的事件,在不同組件之間傳遞數據。這種機制簡化了組件之間相互影響的複雜性,使得不同組件之間的通訊變得更加便捷。

一、Vue部署

Vue.js 是一個建立在 Vue.js 上的 UI 庫。Vue.js 支持webpack 配置和vue-cli腳手架構建項目,如下面示例所示:

  npm install -g vue-cli
  vue init webpack myproject
  cd myproject
  npm install
  npm run dev 

在命令行界面中操作完成後,執行 npm run dev 啟動 webpack 服務器。訪問本地的 http://localhost:8080 即可看到頁面。

二、Vue部署非跨域

當 Vue 部署到非跨域環境時,可以使用以下代碼在 Vue 實例中添加一個 $bus 屬性。

  const bus = new Vue()
    
  Object.defineProperty(Vue.prototype, '$bus', {
      get() {
          return bus
      }
  })

然後在不同的組件中,可以使用以下代碼訂閱事件:

  this.$bus.$on('eventName', (data)=>{
      // 處理數據
  })

還可以使用以下代碼取消訂閱事件:

  this.$bus.$off('eventName')

最後,在需要訂閱事件的組件中,使用以下代碼觸發事件即可:

  this.$bus.$emit('eventName', data)

三、Vue部署在ipfs

使用 Vue 部署在 IPFS 中,需要在 Vue 項目的 dist 目錄下,打包出一個網頁發佈到IPFS,如下面的示例所示:

  npm run build

然後會生成一個 dist 目錄,此時將 dist 目錄添加到 IPFS 中即可:

  ipfs add -w ./dist

添加完成後,會生成一個 hash ,訪問以下鏈接便可查看 Vue 應用程序:

  https://ipfs.io/ipfs/your-hash/index.html

四、Vue部署Linux

將 Vue 部署到 Linux 系統中,需要在服務器中安裝 Node.js、npm 和 pm2。安裝完成後,在服務器中執行以下命令即可:

  npm run build
  pm2 start npm --name "app-name" -- start

此時 Vue 就部署在服務器中了,可以通過服務器的 IP 訪問部署好的 Vue 應用程序。

五、Vue部署到服務器

在 Vue 項目中執行以下命令,將應用程序打包成一個可執行的文件:

  npm run build
  npx http-server dist/

執行完畢後,Vue 應用程序會部署在服務器上。

六、Vue部署nginx

將 Vue 部署到 Nginx 中,需要在 Nginx 配置文件中添加以下代碼:

  location / {
    root /path/to/vuedir/dist; 
    index index.html; 
    try_files $uri $uri/ /index.html;
  }

執行完畢後,Vue 應用程序會部署在 Nginx 中。

總之,Vue.js 中的全局事件總線——Vue $bus 十分方便,可以為組件之間的通訊提供穩定、標準化的途徑。此外,它還可以與不同的部署環境相適應,應用在不同場景和系統中,為 Vue 開發帶來了很大的方便。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/243123.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:54
下一篇 2024-12-12 12:54

相關推薦

  • 使用Vue實現前端AES加密並輸出為十六進制的方法

    在前端開發中,數據傳輸的安全性問題十分重要,其中一種保護數據安全的方式是加密。本文將會介紹如何使用Vue框架實現前端AES加密並將加密結果輸出為十六進制。 一、AES加密介紹 AE…

    編程 2025-04-29
  • 如何使用HTML修改layui內部樣式影響全局

    如果您想要使用layui來構建一個美觀的網站或應用,您可能需要使用一些自定義CSS來修改layui內部組件的樣式。然而,修改layui組件的樣式可能會對整個頁面產生影響,甚至可能破…

    編程 2025-04-29
  • Vue TS工程結構用法介紹

    在本篇文章中,我們將從多個方面對Vue TS工程結構進行詳細的闡述,涵蓋文件結構、路由配置、組件間通訊、狀態管理等內容,並給出對應的代碼示例。 一、文件結構 一個好的文件結構可以極…

    編程 2025-04-29
  • 抖音外放親媽下葬事件的背後真相

    近期,一段抖音外放親媽下葬的視頻引發廣泛關注和熱議。不少人對這個事件感到震驚和憤怒,認為這種行為非常不尊重親人,觸犯了社會公德和家庭道德。但是,事情真相到底是什麼呢?我們有必要從多…

    編程 2025-04-28
  • Vue3的vue-resource使用教程

    本文將從以下幾個方面詳細闡述Vue3如何使用vue-resource。 一、安裝Vue3和vue-resource 在使用vue-resource前,我們需要先安裝Vue3和vue…

    編程 2025-04-27
  • ThinkPHP6 + Vue.js: 不使用Fetch的數據請求方法

    本文將介紹如何在ThinkPHP6和Vue.js中進行數據請求,同時避免使用Fetch函數。 一、AJAX:XMLHttpRequest的基礎使用 在進行數據請求時,最基礎的方式就…

    編程 2025-04-27
  • Vue模擬按鍵按下

    本文將從以下幾個方面對Vue模擬按鍵按下進行詳細闡述: 一、Vue 模擬按鍵按下的場景 在前端開發中,我們常常需要模擬按鍵按下的場景,比如在表單中填寫內容後,按下「回車鍵」提交表單…

    編程 2025-04-27
  • 開發前端程序,Vue是否足夠?

    Vue是一個輕量級,高效,漸進式的JavaScript框架,用於構建Web界面。開發人員可以使用Vue輕鬆完成前端編程,開發響應式應用程序。然而,當涉及到需要更大的生態系統,或利用…

    編程 2025-04-27
  • 如何通過knife4j設置全局token

    本文將介紹如何在使用knife4j作為接口文檔管理工具時,通過設置全局token來提高接口文檔的安全性。 一、什麼是knife4j Knife4j是一款基於springfox的開源…

    編程 2025-04-27
  • cc.director.on事件監聽器

    本文將從多個方面詳細介紹Cocos Creator中的cc.director.on事件監聽器。 一、cc.director.on的作用和用法 cc.director.on是Coco…

    編程 2025-04-27

發表回復

登錄後才能評論