javascript 如何写一个依赖于其它项目的工具包

查看:97
本文介绍了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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆