edp icon indicating copy to clipboard operation
edp copied to clipboard

指定依赖库的build配置

Open leeight opened this issue 10 years ago • 9 comments

搬家 https://github.com/ecomfe/edp-build/issues/37

leeight avatar Mar 19 '14 02:03 leeight

目前的combine 配置在module.conf文件中,该文件除了combine信息外其它的目前应该都是自动维护的,所以如果支持更加灵活的combine配置是否考虑独立成配置文件(combine.conf)?

关于package不同的combine方式,是否是考虑由各packagepackage.json来维护?比如edp-buildcombine的时候首先从独立的combine.conf配置项中获取需要combinepackage,如果没有详细的combine配置则使用packagedefault combine task,同时也可以指定运行packagecombine task

同样prebuildpostbuild也在package.json中配置

treelite avatar Mar 20 '14 10:03 treelite

例如在esui/package.json的配置中添加这样子的内容:

{
  "edp": {
    "targets": {
      "all": {
        "include": [],
        "exclude": [],
      },
      "minimize": {
        "include": [],
        "exclude": [],
      }
    }
  }
}

然后在biz项目中的module.conf里面这样子配置?

{
  "combine": {
    "common/main": {
      "include": [ "esui:all", "er:minimize" ]
    }
  }
}

类似gyp里面的配置方式:https://code.google.com/p/gyp/wiki/GypUserDocumentation#Skeleton_of_a_typical_library_target_in_a_.gyp_file

leeight avatar Mar 20 '14 13:03 leeight

对,就是这样的~~,gyp这货配置还挺复杂的,我们应该可以搞简单点~

all做为默认的target,加上prebuildpostbuild的话,可能就是这样:

{
  "edp": {
    "build": {
        "targets": {
          "all": {
            "include": [],
            "exclude": [],
          },
          "minimize": {
            "include": [],
            "exclude": [],
          }
        },
        "prebuild": "...",
        "postbuild": "..."
    }
  }
}

treelite avatar Mar 21 '14 02:03 treelite

话说prebuild和postbuild到底是干啥的,有实际的应用场景么?

leeight avatar Mar 21 '14 07:03 leeight

比如控件预编译自己对应的模板为js代码之类的呗

otakustay avatar Mar 21 '14 07:03 otakustay

https://github.com/ecomfe/edp/issues/260

leeight avatar Aug 08 '14 07:08 leeight

有几个场景:

  1. package.json中有versionmain.js中也有,希望main.js中只要一个占位符,直接从package.json导过去
  2. 比如一个项目我写的时候不用AMD Wrapper,build时自动加上
  3. 可以通过条件声明,build出min / full版本,如一个带有underscore所有方法的Model对象是full版本,只有get/set的是min版本,用户自选

otakustay avatar Aug 08 '14 07:08 otakustay

1,2指的是你说的是prebuild, postbuild的情况么?

3是不同的target声明?

leeight avatar Aug 08 '14 08:08 leeight

@firede @Justineo @erik168 @chriswong 这个issue里面提到的需求强烈么?

leeight avatar Aug 08 '14 08:08 leeight