tencent cloud

All product documents
Tencent Cloud Super App as a Service
Modularity
Last updated: 2024-11-28 10:37:01
Modularity
Last updated: 2024-11-28 10:37:01

require

Introduces the module. Returns the interface exposed by the module via module.exports or exports.
If you need to introduce a module from another subpackage, you can configure the callback function to fetch the module asynchronously. If the asynchronous fetch fails, the error callback function will be triggered.

parameter

Name
type
mandatory field
Introductions
Note
path
string
yes
You need to introduce the relative path of the module file relative to the current file, or the npm module name, or npm modules path. Absolute path is not supported
You need to introduce a relative path to the module file relative to the current file, or the npm module name, or the npm module path. Absolute paths are not supported by default, you can customise the path mapping by configuring resolveAlias.
callback
function
no
Asynchronous loading success callback function, the callback function parameters for the successful loading of the module
Asynchronous loading success callback function, the callback function parameter is the successfully loaded module.
error
function
no
Asynchronous load failure callback function, the parameters of this callback function are the error message and module name
Asynchronous load failure callback function, the parameters of this callback function are error message and module name.

require.async Chained calls

It can be used by chaining calls.
require
.async('path/to/mod')
.then((mod) => {
console.log(mod)
})
.catch(({ errMsg, mod }) => {
console.error(`path: ${mod}, ${errMsg}`)
})

Sample Code

Calls within the same package

// common.js
function sayHello(name) {
console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {
console.log(`Goodbye ${name} !`)
}
module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye
var common = require('common.js')
Page({
helloMINA: function() {
common.sayHello('MINA')
},
goodbyeMINA: function() {
common.sayGoodbye('MINA')
}
})

Asynchronous Calls Across Subpackages

// subpackage/common.js Subcontracting common files
export const sayHello = () => console.log("hello")
// pages/index.js main package page
let common;
require('../../subpackage/common.js', (mod) => {
common = mod
}, ({ errMsg, mod }) => {
console.error(`path: ${mod}, ${errMsg}`)
})
Page({
sayHello() {
common && common.sayHello()
}
})

module

Object module

Current Module Object.

attribute

attribute
type
Introductions
exports
Object
Module exposes objects using therequireWhen referencing a module, you can get the

sample code

// common.js
function sayHello(name) {
console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {
console.log(`Goodbye ${name} !`)
}
module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye

exports

Object exports

module.exports A reference to

sample code

// common.js
function sayHello(name) {
console.log(`Hello ${name} !`)
}
function sayGoodbye(name) {
console.log(`Goodbye ${name} !`)
}
module.exports.sayHello = sayHello
exports.sayGoodbye = sayGoodbye

Was this page helpful?
You can also Contact Sales or Submit a Ticket for help.
Yes
No

Feedback

Contact Us

Contact our sales team or business advisors to help your business.

Technical Support

Open a ticket if you're looking for further assistance. Our Ticket is 7x24 available.

7x24 Phone Support
Hong Kong, China
+852 800 906 020 (Toll Free)
United States
+1 844 606 0804 (Toll Free)
United Kingdom
+44 808 196 4551 (Toll Free)
Canada
+1 888 605 7930 (Toll Free)
Australia
+61 1300 986 386 (Toll Free)
EdgeOne hotline
+852 300 80699
More local hotlines coming soon