javascript 如何写一个依赖于其它项目的工具包
本文介绍了javascript 如何写一个依赖于其它项目的工具包的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
想创建一个工具包tools
,提供给内部数个项目使用,依赖d3
。
内部几个项目有传统结构的:如下
<script src="d3.js" />
还有使用webpack的,基于commonjs
var d3=require('d3')
另外还有混合搭配的,在html里面引入,在js里面不require,减小文件的体积和编译时间,可以一定程度上视为传统结构。
那么问题来了:我的项目里面到底要不要加入这行代码:
var d3 = require('d3')
如果我写了,那么别我的tools.js
或是别人require之后都会默认包含d3
,不压缩的话大概有400K,如果他们本身使用webpack之类引d3还好,但如果是传统结构,那么这多引入这部分的就浪费了。
如果我不写,那么必须要保证 window上有d3对象,我的代码才能正常运行。如果基于webpack的,他们要是这样写就会报错:
var d3=require('d3');
var tools = require('tools.js');
tools.xxxx(); //报错,没有d3对象不能运行
求支招!
解决方案
既然你的模块依赖于 d3 ,那就一定要把 d3 打进去啊。
模块最大的特点就是得保证使用者开箱即用,在引入你的依赖之后,不用再显示的引入别的依赖。
这篇关于javascript 如何写一个依赖于其它项目的工具包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文