Table of Contents
1. What is message subscription and publishing
2. How to use pubsub
3.nextTick" >3.nextTick
Home Web Front-end Vue.js An article briefly analyzing the usage of message subscription and publishing in Vue

An article briefly analyzing the usage of message subscription and publishing in Vue

Jan 31, 2023 pm 08:38 PM
vue

What is message subscription and publishing? how to use? The following article will introduce to you how to use message subscription and publishing in Vue. I hope it will be helpful to you!

An article briefly analyzing the usage of message subscription and publishing in Vue

1. What is message subscription and publishing

Message subscription and publishing is a method of communication between components, suitable for Communication between arbitrary components. Can better realize communication between components (message subscription and publishing are like a newspaper delivery boy. For example, Xiao A subscribes to a newspaper and then leaves his own information in the newspaper office, and then the newspaper delivery boy presses the The message left by a found the place where little a was and gave him the newspaper)

2. How to use pubsub

1. First we need to install pubsub, Open vscode → open the terminal → enter the installation command (you can also install it in cmd) [Related recommendations: vuejs video tutorial, web front-end development]

npm i pubsub-js
Copy after login

2 .Introduction (just introduce it into the component that needs to use pubsub)

import pubsub from ' pubsub-js'
Copy after login

3. Receive data If component A wants to receive data, subscribe to the message in component A, and the subscribed callback remains in component A itself.

methods(){demo(data){.....}mounted() {this.pid = pubsub. subscribe( 'xx',this . demo) }
Copy after login

We should first find the component that wants to receive data, configure a mounted configuration item, and subscribe to the message subscribeThis word also means to subscribe, as well. The following component is the role of Little A. He wants to subscribe to a newspaper, and then leaves his address 'hello', and then uses the callback to obtain the data. The msgName and data here are respectively Subscription name and data (that is, Xiao A’s home address and the newspaper carried by the newspaper delivery boy)

import pubsub from "pubsub-js";
export default {
  name: "School",
  data() {
    return {
      name: "山鱼特效屋",
      address: "南京北城区"
    };
  },
  mounted() {
    this.pubId = pubsub.subscribe("hello", (msgName, data) => {
      console.log("该消息已经发布", msgName, data);
    });
  },
  //使用完之后销毁该绑定事件避免后期错误使用
  beforeDestroy() {
    pubsub.unsubscribe();
  }
};
Copy after login
  • Provide data

pubsub. publish( ' xxx' ,数据)
Copy after login

The first parameter 'hello' of the publish method is the subscription name, and the second parameter (this.name) is the data you want to pass.

import pubsub from "pubsub-js";
export default {
  name: "Student",
  data() {
    return {
      name: "张三",
      sex: "男"
    };
  },
  // 配置一个methods项
  methods: {
    snedStudentName() {
      // 选择给谁提供数据
      pubsub.publish("hello", this.name);
    }
  }
};
Copy after login
  • It is best to unsubscribe in the beforeDestroy hook.

  beforeDestroy() {pubsub.unsubscribe();}
Copy after login

3.nextTick

##1. Syntax: this. $nextTick (callback function)

2. Function: The operation placed in $nextTick will not be executed immediately, but will be executed after the data is updated and the DOM update is completed.

3. Timing of use: When the data is changed, it must be based on the updated When certain operations are performed on the new DOM, they must be executed in the callback function specified by nextTick.

(Learning video sharing:

vuejs introductory tutorial, Basic programming video)

The above is the detailed content of An article briefly analyzing the usage of message subscription and publishing in Vue. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1664
14
PHP Tutorial
1269
29
C# Tutorial
1249
24
How to use bootstrap in vue How to use bootstrap in vue Apr 07, 2025 pm 11:33 PM

Using Bootstrap in Vue.js is divided into five steps: Install Bootstrap. Import Bootstrap in main.js. Use the Bootstrap component directly in the template. Optional: Custom style. Optional: Use plug-ins.

How to add functions to buttons for vue How to add functions to buttons for vue Apr 08, 2025 am 08:51 AM

You can add a function to the Vue button by binding the button in the HTML template to a method. Define the method and write function logic in the Vue instance.

How to use watch in vue How to use watch in vue Apr 07, 2025 pm 11:36 PM

The watch option in Vue.js allows developers to listen for changes in specific data. When the data changes, watch triggers a callback function to perform update views or other tasks. Its configuration options include immediate, which specifies whether to execute a callback immediately, and deep, which specifies whether to recursively listen to changes to objects or arrays.

How to return to previous page by vue How to return to previous page by vue Apr 07, 2025 pm 11:30 PM

Vue.js has four methods to return to the previous page: $router.go(-1)$router.back() uses <router-link to="/" component window.history.back(), and the method selection depends on the scene.

What does vue multi-page development mean? What does vue multi-page development mean? Apr 07, 2025 pm 11:57 PM

Vue multi-page development is a way to build applications using the Vue.js framework, where the application is divided into separate pages: Code Maintenance: Splitting the application into multiple pages can make the code easier to manage and maintain. Modularity: Each page can be used as a separate module for easy reuse and replacement. Simple routing: Navigation between pages can be managed through simple routing configuration. SEO Optimization: Each page has its own URL, which helps SEO.

React vs. Vue: Which Framework Does Netflix Use? React vs. Vue: Which Framework Does Netflix Use? Apr 14, 2025 am 12:19 AM

Netflixusesacustomframeworkcalled"Gibbon"builtonReact,notReactorVuedirectly.1)TeamExperience:Choosebasedonfamiliarity.2)ProjectComplexity:Vueforsimplerprojects,Reactforcomplexones.3)CustomizationNeeds:Reactoffersmoreflexibility.4)Ecosystema

How to reference js file with vue.js How to reference js file with vue.js Apr 07, 2025 pm 11:27 PM

There are three ways to refer to JS files in Vue.js: directly specify the path using the <script> tag;; dynamic import using the mounted() lifecycle hook; and importing through the Vuex state management library.

How to use vue traversal How to use vue traversal Apr 07, 2025 pm 11:48 PM

There are three common methods for Vue.js to traverse arrays and objects: the v-for directive is used to traverse each element and render templates; the v-bind directive can be used with v-for to dynamically set attribute values ​​for each element; and the .map method can convert array elements into new arrays.

See all articles