Skip to content

lazyRequire在crn-cli中是什么作用? #59

Open

Description

@colinNaive

为什么在crn-cli中有一个lazyRequire的实现呢?这个的作用是什么?
global.lazyRequire = lazyRequire; function lazyRequire(requirePath) { var lazy = { __lazyRequireFlag: true, __lazy_module_id__ : requirePath, load : function() { var module = global.__r(this.__lazy_module_id__); return module; } }; return lazy; }
在crn的代码中有看到lazyRequire的实现,主要目的是先定义module,在使用的地方才load,才去真正require相关module。这个是我能理解的,可是crn-cli的作用是打包,为什么打包的时候还需要lazyRequire?
麻烦大佬指教一二。谢谢

Activity

  1. blackwuxin commented on Oct 26, 2019

    @blackwuxin
    Contributor

    打包的时候会执行patch动作,拷贝lazyRequire文件到node_moudles/react-native目录下。这样业务方在使用lazyRequire模块才能找到该文件。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions