Builder
API
Builder 类
表示一个构建器
构造函数
new Builder
初始化新的构建器
参数
参数名 | 说明 | 类型 |
---|---|---|
(可选)options | 附加选项 展开子属性
|
|
(可选)devServer | 关联的开发服务器 |
|
属性
属性名 | 说明 | 类型 |
---|---|---|
options 只读 | 获取构建器的选项 展开子属性
|
|
compilers 只读 | 获取所有编译器 |
|
typeScriptCompiler 只读 | 获取使用的 TypeScript 编译器 |
|
externalPackageCompiler 只读 | 获取外部包编译器 |
|
docCompiler 只读 | 获取使用的文档编译器 |
|
fs 只读 | 获取使用的文件系统 |
|
logger 只读 | 获取使用的日志记录器 |
|
building | 判断是否正在执行最终构建 | boolean |
devServer (可选)只读 | 关联的开发服务器 |
|
vendors 保护 | 依赖的三方包 | string[] |
方法
compileTypeScript
编译一段 TypeScript
参数
参数名 | 说明 | 类型 |
---|---|---|
content | 要编译的源码,如果为 | string |
fileName | 源码的绝对路径,用于查找和该路径相关的配置以及解析源码中导入的相对路径 | string |
(可选)checkErrors | 是否检查错误,如果为 默认值: | false | true | "transpileOnly" |
(可选)moduleName | 如果要生成 AMD 模块,则指定当前模块名 | string |
(可选)renameModuleName | 重命名导入模块名的回调函数 | (moduleName: string, sourceFile: |
(可选)options | 针对当前文件的编译器选项 展开子属性
|
|
返回值
Pick
<TypeScriptCompileResult
, "program" | "content" | "sourceMap" | "declaration" | "sourceFile"> & CompileResult
getAsset
异步
获取指定地址对应的资源
getMainFileName
获取指定文件夹的首页名(不含扩展名)
参数
参数名 | 说明 | 类型 |
---|---|---|
dir | 文件夹名 | string |
返回值
string
runCompiler
异步
使用指定的编译器编译指定的文件
watch
添加指定的路径更新后的回调函数
参数
参数名 | 说明 | 类型 |
---|---|---|
path | 要监听的绝对路径 | string | (function(path: string, type: |
callback | 要添加的回调函数或资源地址 | string | (function() => void) |
返回值
void
unwatch
删除指定的路径更新后的回调函数
参数
参数名 | 说明 | 类型 |
---|---|---|
path | 监听的绝对路径 | string | (function(path: string, type: |
callback | 要删除的回调函数或资源地址 | string | (function() => void) |
返回值
void
emitUpdate
通知指定的路径已更新
build
异步
立即构建资源
参数
参数名 | 说明 | 类型 |
---|---|---|
(可选)clean | 是否在构建前清理目标文件夹 默认值: | boolean |
(可选)url | 要构建的资源地址,如果为空则构建所有资源 | string |
返回值
Promise
<void>
getRootDirNames
异步
获取项目的根文件夹
返回值
Promise
<string[]>
toURL
返回指定路径的访问地址
参数
参数名 | 说明 | 类型 |
---|---|---|
path | 要获取的绝对路径 | string |
返回值
string
toShortURL
获取访问指定资源的最短地址
参数
参数名 | 说明 | 类型 |
---|---|---|
path | 要访问的资源路径 | string |
返回值
string
toPath
返回指定地址对应的绝对路径
参数
参数名 | 说明 | 类型 |
---|---|---|
url | string |
返回值
string
getOutputName
获取指定模块生成的模块名
参数
参数名 | 说明 | 类型 |
---|---|---|
name | 源模块名 | string |
返回值
string
getOutputNames
获取指定模块生成的所有模块名
参数
参数名 | 说明 | 类型 |
---|---|---|
name | 源模块名 | string |
返回值
string[]
getHTMLOutputName
获取指定模块生成的 HTML 模块名,如果模块无法生成 HTML,则返回原地址
参数
参数名 | 说明 | 类型 |
---|---|---|
name | 源模块名 | string |
返回值
string
getInputName
计算生成指定文件的源文件名,如果找不到则返回 undefined
参数
参数名 | 说明 | 类型 |
---|---|---|
name | 生成的文件名 | string |
entries | 文件夹下的所有文件名 | string[] |
返回值
string
isIgnored
判断指定的路径是否被忽略
参数
参数名 | 说明 | 类型 |
---|---|---|
path | 要判断的绝对路径 | string |
返回值
boolean
loadPlugin
保护
载入一个插件
参数
参数名 | 说明 | 类型 |
---|---|---|
name | 要载入的插件名 | string |
返回值
any
loadAsset
异步保护
生成指定的资源
buildAsset
异步保护
构建指定地址对应的文件
buildModule
异步保护
构建指定地址对应的模块
getGeneratedURLs
异步生成器保护
获取动态生成的所有文件的地址
返回值
AsyncGenerator
<string, void, undefined>
BuilderOptions 接口
表示构建器的选项
属性
属性名 | 说明 | 类型 |
---|---|---|
baseDir | 配置文件中所有路径的基路径 | string |
ignore | 监听和生成的忽略列表 |
|
srcDir | 存放源码的文件夹路径 | string |
outDir | 构建生成的文件夹路径 | string |
assetsDir | 静态资源文件夹路径 | string |
homePageName | 设置项目主页文件名 示例
| string |
mainFileName | 设置文件夹的主文件名(不含扩展名),其中 | string |
outDefaultFile | 设置输出的默认文件名 | string |
noExtension | 设置输出 HTML 文件名时删除扩展名 | boolean |
fs | 使用的文件系统 |
|
locale | 使用的语言(如 | string |
compilers | 自定义编译器列表 |
|
logger | 日志记录器的选项 展开子属性
|
|
sourceMap | 开发时是否启用源映射 | boolean |
sourceMapRoot | 源映射的根地址,默认为空表示相对目录,"file:///" 表示使用绝对路径 | string |
optimize | 发布时是否优化生成的代码 | boolean |
ts | 内置 TypeScript 编译器的附加选项 | any |
sass | 内置 Sass 编译器的附加选项 | any |
less | 内置 Less 编译器的附加选项 | any |
webpack | 内置 Webpack 编译器的附加选项 | any |
md | 内置 Markdown 编译器的附加选项 | any |
doc | 内置文档编译器的附加选项 展开子属性
|
|
modules | 配置供代码加载的内置模块 | {[name: string]: string} |
build | 一次性构建时额外设置的选项 展开子属性
|
|
plugins | 所有附加插件 | (string | |
Compiler 接口
表示一个编译器
属性
属性名 | 说明 | 类型 |
---|---|---|
inExts | 输入的文件扩展名(含点) | string[] |
outExt | 输出的文件扩展名(含点) | string |
use (可选) | 编译器的源路径 | string |
方法
compile
(可选)
编译指定的模块
参数
参数名 | 说明 | 类型 |
---|---|---|
content | 模块的源内容 | string |
path | 模块的源绝对路径 | string |
outPath | 生成的目标绝对路径 | string |
builder | 当前的构建器对象 |
|
返回值
CompileResult
| Promise
<CompileResult
>
返回编译的结果对象
CompileResult 接口
表示编译结果
属性
属性名 | 说明 | 类型 |
---|---|---|
content | 生成的内容 | string | |
sourceMap | 生成的源映射 | string | |
errors | 生成时产生的错误 展开子属性
|
|
dependencies | 生成所依赖的文件路径,当任一依赖变化后需要重新生成 | (string | |
DependencyCallback 类型
表示检测依赖的回调函数
(path: string, updateType: AssetUpdateType
) => boolean
BuilderPlugin 类型
表示一个构建器插件
(builder: Builder
) => void
Asset 接口
表示一个资源
属性
属性名 | 说明 | 类型 |
---|---|---|
type | 资源的类型 |
|
content (可选) | 资源的内容,可以是文件的内容或重定向的地址 | string | |
sourceMap (可选) | 如果当前资源存在源映射,则为关联的源映射资源 展开子属性
|
|
errors (可选) | 构建时产生的所有错误 展开子属性
|
|
dependencies (可选) | 构建当前资源所依赖的文件路径,当任一依赖文件变化后需要重新构建 | (string | |
AssetType 枚举
只读
表示资源的类型
成员
枚举名 | 说明 | 值 |
---|---|---|
notFound | 资源不存在 | 0 |
file | 当前资源是一个文件 | 1 |
redirect | 当前资源需要外部重定向到另一个资源 | 2 |
AssetUpdateType 枚举
只读
表示资源更新的类型
成员
枚举名 | 说明 | 值 |
---|---|---|
created | 资源被创建 | 0 |
changed | 资源被修改 | 1 |
deleted | 资源被删除 | 2 |