The first thing to say is that the homepage of JD Taobao is not implemented in a pure Native way. Due to business reasons, e-commerce apps must consider that the interface layout may change frequently, so the H5+Native method is often used. Basically, the pages in WebView may interact with js and Native. In this regard, there is a relatively mature Apache Cordova open source framework. For related content, please refer to https://cordova.apache.org/. A further step is to directly use H5 The page is displayed in Native mode, which is React Native, which has become popular in recent years. There are endless RN-based solutions. You can learn more about it before actual use. For related content, you can refer to http://www.cocoachina.com /ios/20150409/11514.html and http://reactnative.cn/ . In addition, if you do not consider the layout changes, it is also possible to develop the homepage purely using Native methods, provided that the View is split and encapsulated reasonably. The menu, advertisement, recommendation and other modules mentioned in the question are packaged separately and added to the controller's View during layout, and have nothing to do with TableView. When there is a lot of data, the data on the current page can be divided into several interfaces and requested separately to avoid long delays caused by requesting data.
The first thing to say is that the homepage of JD Taobao is not implemented in a pure Native way.
Due to business reasons, e-commerce apps must consider that the interface layout may change frequently, so the H5+Native method is often used. Basically, the pages in WebView may interact with js and Native. In this regard, there is a relatively mature Apache Cordova open source framework. For related content, please refer to
https://cordova.apache.org/. A further step is to directly use H5 The page is displayed in Native mode, which is React Native, which has become popular in recent years. There are endless RN-based solutions. You can learn more about it before actual use. For related content, you can refer to
http://www.cocoachina.com /ios/20150409/11514.html and http://reactnative.cn/
.
In addition, if you do not consider the layout changes, it is also possible to develop the homepage purely using Native methods, provided that the View is split and encapsulated reasonably. The menu, advertisement, recommendation and other modules mentioned in the question are packaged separately and added to the controller's View during layout, and have nothing to do with TableView. When there is a lot of data, the data on the current page can be divided into several interfaces and requested separately to avoid long delays caused by requesting data.