Discuss the implementation methods introduced by uniapp public methods
With the development of mobile Internet, developing APP has become one of the methods widely used by major enterprises. In the process of APP development, most applications will involve the use of some public methods. In order to facilitate maintenance and management, we can introduce these public methods into the project in the form of plug-ins. One of the more popular MVVM frameworks at present, uniapp, has provided a very convenient way to introduce plug-ins. This article will take you to discuss the implementation method of uniapp public method introduction.
1. Create a plug-in project
First we need to create a plug-in project (plug-in projects are basically the same as ordinary uniapp projects). After creating the project, we need to create a project named "uni_modules" in the project directory ” folder (if not available), which is used to store plug-ins.
2. Encapsulate the public method as a plug-in
Write a public method in the project (take toast as an example below):
export default { toast: (msg, duration = 1500, position = "bottom") => { uni.showToast({ title: msg, icon: "none", duration: duration, position: position }); } };
Encapsulate the public method as a plug-in, steps As follows:
- Create a
.npmignore
file in theuni_modules
folder, add.vscode
,.git
and other folders or files will not be packaged. - Create a folder named
your-plugin
under theuni_modules
folder,your-plugin
is the name of the plug-in. - Create a
package.json
file in theyour-plugin
folder.
{ "name": "@uni/your-plugin", "version": "1.0.0", "main": "index.js", "description": "your description", "author": "your name", "license": "MIT", "keywords": ["uni", "plugin"] }
Among them, the name
field is the name of the plug-in in the format of @uni/plug-in name
, and the main
field is the entry file , the keywords
tag must contain the keywords uni
and plugin
.
- Create an
index.js
file in theyour-plugin
folder.
import toast from "./toast.js"; const Plugin = { toast }; export default { install(Vue) { Object.keys(Plugin).forEach(key => { Vue.prototype[`$${key}`] = Plugin[key]; }); } };
Among them, toast
is a public method, the Plugin
object stores all the public methods that need to be exposed, and the install
method uses to install the plug-in.
3. Push to npmjs
Push the plug-in to npmjs and it can be referenced by other projects. The steps are as follows:
- In [npmjs official website](https:/ /www.npmjs.com/) (skip this step if you already have an account).
- Use the
npm adduser
command in the terminal to log in. - Use the command
npm init
in theyour-plugin
folder to initialize.
npm init
- To publish the plug-in, use the command
npm publish
.
npm publish
- If you need to update the plug-in, just modify the version and publish it again.
4. Introduce plug-ins
In projects that need to use public methods, introduce plug-ins pushed to npmjs. The steps are as follows:
- In the project directory Create a file named
manifest.json
and add the following code.
{ "app-plus": { "plugins": { "@uni/your-plugin": { "version": "^1.0.0", "provider": "<your provider>" } } } }
Among them, the version
field is the version number of the plug-in, and the provider
field is the plug-in provider, which needs to be specified when the plug-in is published to npmjs.
- In pages that need to use public methods, execute the following code.
import yourPlugin from "@uni/your-plugin"; Vue.use(yourPlugin);
5. Use public methods
After introducing the plug-in, you can use public methods in the page. The following takes the toast
method just created as an example:
this.$toast('Hello world!')
At this point, we have successfully introduced the uniapp public method.
To summarize, encapsulating public methods as plug-ins and pushing them to npmjs can greatly improve the efficiency of project development and the convenience of management. In actual projects, we can encapsulate some frequently used methods as plug-ins and introduce them in the above way.
The above is the detailed content of Discuss the implementation methods introduced by uniapp public methods. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

This article details uni-app's local storage APIs (uni.setStorageSync(), uni.getStorageSync(), and their async counterparts), emphasizing best practices like using descriptive keys, limiting data size, and handling JSON parsing. It stresses that lo

This article details workarounds for renaming downloaded files in UniApp, lacking direct API support. Android/iOS require native plugins for post-download renaming, while H5 solutions are limited to suggesting filenames. The process involves tempor

This article addresses file encoding issues in UniApp downloads. It emphasizes the importance of server-side Content-Type headers and using JavaScript's TextDecoder for client-side decoding based on these headers. Solutions for common encoding prob

This article details uni-app's geolocation APIs, focusing on uni.getLocation(). It addresses common pitfalls like incorrect coordinate systems (gcj02 vs. wgs84) and permission issues. Improving location accuracy via averaging readings and handling

This article details making and securing API requests within uni-app using uni.request or Axios. It covers handling JSON responses, best security practices (HTTPS, authentication, input validation), troubleshooting failures (network issues, CORS, s

This article compares Vuex and Pinia for state management in uni-app. It details their features, implementation, and best practices, highlighting Pinia's simplicity versus Vuex's structure. The choice depends on project complexity, with Pinia suita

The article details how to integrate social sharing into uni-app projects using uni.share API, covering setup, configuration, and testing across platforms like WeChat and Weibo.

This article explains uni-app's easycom feature, automating component registration. It details configuration, including autoscan and custom component mapping, highlighting benefits like reduced boilerplate, improved speed, and enhanced readability.
