Nodejs 设置全局函数并调用嵌套函数
Nodejs Set a global function and call a nested function
我的主要功能
import AppLauncher from './Applauncher'
function Mainfunc() {
global.app= AppLauncher()
global.app.start('index')
}
AppLauncher.js
function AppLauncher() {
function start(opts){
console.log('functions start called with' + opts)
}
}
export default AppLauncher
我想将 AppLauncher 函数指定为全局函数,并调用嵌套在其中的启动函数
构造函数是必经之路。你可以这样做:
// AppLauncher.js
function AppLauncher() {
// run some code...
// notice `this`
this.start = function(opts) {
console.log('start function called with', opts);
}
}
export default AppLauncher;
在您的主函数中,使用 new
关键字调用它:
import AppLauncher from './AppLauncher';
function Mainfunc() {
global.app = new AppLauncher();
global.app.start('index');
}
构造函数也可以写成类(你可以像我上一个例子那样使用):
class AppLauncher {
constructor() {
// Anything in here gets executed when once you create an object from this class with the `new` keyword
}
// Instead of `this` we add a method to the class:
start(opts) {
console.log('start function called with', opts);
}
}
export default AppLauncher;
关于构造函数的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/constructor
如果你不想使用构造函数,你也可以return一个对象:
// AppLauncher.js
function AppLauncher() {
// Some code here...
return {
start(opts) {
console.log("function start called with", opts);
}
};
}
export default AppLauncher;
您可以像您想象的那样使用它:
import AppLauncher from `./AppLauncher`;
function Mainfunc() {
global.app = AppLauncher();
global.app.start('index');
}
附带说明一下,通常使用 PascalCase
调用构造函数,而使用 camelCase
.
调用常规函数
我的主要功能
import AppLauncher from './Applauncher'
function Mainfunc() {
global.app= AppLauncher()
global.app.start('index')
}
AppLauncher.js
function AppLauncher() {
function start(opts){
console.log('functions start called with' + opts)
}
}
export default AppLauncher
我想将 AppLauncher 函数指定为全局函数,并调用嵌套在其中的启动函数
构造函数是必经之路。你可以这样做:
// AppLauncher.js
function AppLauncher() {
// run some code...
// notice `this`
this.start = function(opts) {
console.log('start function called with', opts);
}
}
export default AppLauncher;
在您的主函数中,使用 new
关键字调用它:
import AppLauncher from './AppLauncher';
function Mainfunc() {
global.app = new AppLauncher();
global.app.start('index');
}
构造函数也可以写成类(你可以像我上一个例子那样使用):
class AppLauncher {
constructor() {
// Anything in here gets executed when once you create an object from this class with the `new` keyword
}
// Instead of `this` we add a method to the class:
start(opts) {
console.log('start function called with', opts);
}
}
export default AppLauncher;
关于构造函数的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/constructor
如果你不想使用构造函数,你也可以return一个对象:
// AppLauncher.js
function AppLauncher() {
// Some code here...
return {
start(opts) {
console.log("function start called with", opts);
}
};
}
export default AppLauncher;
您可以像您想象的那样使用它:
import AppLauncher from `./AppLauncher`;
function Mainfunc() {
global.app = AppLauncher();
global.app.start('index');
}
附带说明一下,通常使用 PascalCase
调用构造函数,而使用 camelCase
.