有没有办法在构建过程中使用预处理器替换 javascript 文件中的变量。我使用 grunt、usemin、uglifyjs(yeoman 堆栈的一部分)。
url
我目前从一个全局 javascript 对象中引用。例如,
my.url = {
book: {
get : '/my/book/{id},
new: '/my/book'
}
}
在我的程序中,我可以参考url
asmy.url.book.get
等。目的是
- 不希望 url 字符串散布在整个程序中,因为开发过程中的任何更改都会使其难以重构。
- url 可以基于服务器 API 生成,并且不想在客户端重复。
现在,一旦我对开发感到满意,我喜欢预处理所有 javascript 文件以将所有这些引用替换为实际的 url 字符串。目的是避免加载包含所有 url 的额外文件(可能用户只需要很少的 url)。
是否有任何类似于 html 模板包的工具来处理 javascript 并替换所有变量。我更喜欢它与 grunt/yeoman 堆栈一起使用。