有一个密码框控件,需要加载的资源非常多,js有十个左右。
现在是通过在index.html中直接通过script标签引用进来,没有问题。
不想要在一开始就加载这么多js进来,想要再到这一步的时候再加载进来这些js。
用了几种方式,没有实现:
1、在组件中用:
require("file1");
require("file2");
...
这样加载有问题,是file1里面定义放方法,在file2中拿不到,因为放到webpack定义的上下文中。
2、用require方法加载一个总的汇总的js,然后用这个js中document.getElementsByTagName('head')[0].appendChild方法,一个一个添加到页面上面。
还是会出现和第一种方式,一样的问题。
还想到一种方式,就是把所有的js都放到一个js里面,这样应该就没有问题,只不过调试起来不方便。
请问大家遇到这种情况一般是怎么解决的?
为什么要直接require但不赋值?file1方法export出来使用啊,file2要使用file1的方法就在file2里require file1。
webpack本身就是支持code split的。到特定路由才加载组件代码是完全支持的,可以去看看文档。