React native 如何将我的应用程序拆分为模块?

React native 如何将我的应用程序拆分为模块?,react-native,React Native,这似乎微不足道,但我找不到任何文档 我想把我的(非常基本的)应用程序分成UI和非UI模块。所以我创造了这个: /* datahandler.js */ export class DataHandler { getSuppliers(search,limit,offset) {

这似乎微不足道,但我找不到任何文档

我想把我的(非常基本的)应用程序分成UI和非UI模块。所以我创造了这个:

/* datahandler.js */

export class DataHandler {                                                                           

  getSuppliers(search,limit,offset) {                                                                
    let params = { method: 'GET',                                                                    
                   headers: { 'Accept': 'application/json' },                                        
                   body: null };                                                                     

    let url = 'http://url.for.data.service.goes.here';                                   

    return fetch( `${url}?params=${search},${limit},${offset}`, params )                             
      .then((response) => response.json() )                                                          
      .catch((error)   => { console.error("fetch caught:" + error); } );                             

  }                                                                                                  

}    
但我不知道该把模块放在哪里,以便识别它。如果我把它放在顶层,并从'DataHandler'用
import{DataHandler}调用它,然后我得到:

error: bundling: UnableToResolveError: Unable to resolve module `datahandler` from `/home/andy/andy/try_react/try1/index.android.js`: Module does not exist in the module map or in these directories:
  /home/andy/andy/try_react/try1/node_modules

This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
  1. Clear watchman watches: `watchman watch-del-all`.
  2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
  3. Reset packager cache: `rm -fr $TMPDIR/react-*` or `npm start --reset-cache`.
    at UnableToResolveError (/home/andy/andy/try_react/try1/node_modules/react-native/packager/src/node-haste/DependencyGraph/ResolutionRequest.js:488:5)
    at p.catch.error (/home/andy/andy/try_react/try1/node_modules/react-native/packager/src/node-haste/DependencyGraph/ResolutionRequest.js:366:19)
    at process._tickCallback (internal/process/next_tick.js:109:7)
Bundling `index.android.js`  0.0% (0/1), failed.
看起来我可以将文件放入node_modules目录,但我不想这样做。是否有一些我在文档中没有看到的模块路径或要包含的文件清单


顺便说一句,我确实尝试了react native new library--name=“datahandler”
,但它所做的只是创建一个Libraries目录,而不是承诺的模板(对于整个库?我很确定我不希望这样)。

它只是

import (DataHandler} from './datandler';
我错过了
/


但是:我仍然找不到任何有文档记录的地方。

通常,您只需使用文件的路径来获取自己的类

rootDir
.. pages
... page.jsx
.. modules
... datahandler.js
你的模块应该是这样的

export default class DataHandler {
...
}
在你的页面上

import DataHandler from '../modules/datahandler'