harmony 鸿蒙app.js

  • 2023-06-24
  • 浏览 (409)

app.js

Application Lifecycle4+

You can implement lifecycle logic specific to your application in the app.js file. Available application lifecycle functions are as follows:

  • onCreate(): called when an application is created

  • onDestroy(): called when an application is destroyed

In the following example, logs are printed only in the lifecycle functions.

// app.js
export default {
  onCreate() {
    console.info('Application onCreate');
  },
  onDestroy() {
    console.info('Application onDestroy');
  },
}

Application Object10+

Attribute Type Description
getApp Function Obtains the data object exposed in app.js from the page JS file. This API works globally.

NOTE

The application object is global data and occupies JS memory before the application exits. Although it facilitates data sharing between different pages, exercise caution when using it on small-system devices, whose memory is small. If they are overused, exceptions may occur due to insufficient memory when the application displays complex pages.

The following is an example:

Declare the application object in app.js.

// app.js
export default {
    data: {
        test: "by getAPP"
    },
    onCreate() {
        console.info('Application onCreate');
    },
    onDestroy() {
        console.info('Application onDestroy');
    },
};

Access the application object on a specific page.

// index.js
export default {
    data: {
        title: ""
    },
    onInit() {
        if (typeof getApp !== 'undefined') {
            var appData = getApp().data;
            if (typeof appData !== 'undefined') {
                this.title = appData.name; // read from app data
            }
        }
    },
    clickHandler() {
        if (typeof getApp !== 'undefined') {
            var appData = getApp().data;
            if (typeof appData !== 'undefined') {
                appData.name = this.title; // write to app data
            }
        }
    }
}

NOTE

To ensure that the application can run properly on an earlier version that does not support getApp, compatibility processing must be performed in the code. That is, before using getApp, check whether it is available.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙JavaScript-compatible Web-like Development Paradigm (ArkUI.Lite)

harmony 鸿蒙Universal Attributes

harmony 鸿蒙Universal Events

harmony 鸿蒙Universal Styles

harmony 鸿蒙chart

harmony 鸿蒙image-animator

harmony 鸿蒙image

harmony 鸿蒙input

harmony 鸿蒙marquee

harmony 鸿蒙picker-view

0  赞