Closed ccqgithub closed 8 years ago
不错,要不你来发布一个吧,反正 define 处理了,这个插件是不会再处理的。
我认为 node_modules 的重点是要 browserify ,即保障代码能在浏览器中运行。所以就简单的处理了下 node_modules 中一些用法。
两个的定位不一样,再写个 fis3-preprocessor-define 也不冲突。
@2betop 也是,就是不知道hook插件具体在哪个阶段运行的呢?是在standard阶段么?
hook 跑到了最前面,应该往后放到标准化的时候。这块我会修改这个插件。
好的 🐱 👍
这个好!
@2betop 提个建议:
文件属性参数 skipBrowserify
可以写到 README.MD 文档里。这个在项目规模较大的情况下还是比较重要的。
对于旧的项目兼容的情况下,一般来说,只有 node_modules 下的模块才需要 browserify 处理。 而且,node_modules 下的模块也不是所有的都适合做处理。 一个 shimBuffer 配置全局又太果断了
加了
@2betop 响应好快,赞!
另外一个问题,这个silent
应该是通过 lookup:file
事件带过来的参数,具体是怎么配置实现的。
对于非 node_modules 目录下的模块,会出现不少的 WARNI
配置不了,有个提示还是挺好的,除非误判了。看什么误判了,fis3 可以调整。
好吧。主要是对旧的项目作兼容,之前的一些插件在配置和引用上各种方式都有。后面逐个的去改好了
👍 提示没大问题,就是怕有时候文件的内置require刚好和外面的一个安装的模块重名,然后被错误地依赖进去…… 比如用webuploader的时候老提示我装zepto,如果zepto装了就被打包进去了。。 新版本还没试用,还不清楚问题是否存在~
最近发现vue、react等都通过process.env.NODE_ENV 控制log等。而构建的时候将变量替换为对应的值。 本来准备模仿webpack的DefinePlugin写一个
fis3-preprocessor-define
插件,却发现通过fis3打包的react已经替换,研究下发现是这个插件的功能。但是,我认为不应该将process.env.NODE_ENV的解析放在这个插件里。更好的方法是模仿webpack写一个
fis3-preprocessor-define
的插件。原因:第一,不只是node_modules 里的代码需要类似的功能,可能自己写的模块也需要。第二,单独通过压缩不压缩来区分环境,不太清晰灵活。第三,可能需要替换的不止这一个变量,还会有CUSTOM_ENV等……
个人认为类似webpack的define插件,写成如下这种方式最好。