如何防止文本优化!和json!来自Require.JS的r.JS工具上的插件?

时间:2016-05-21 02:04:02

标签: json optimization requirejs r.js

这里已经看到很多主题,但没有一个尖锐的解决方案有效。

优化我的项目时,R.js无法处理这个json!插件依赖于我的一个模块。

错误讯息:

Tracing dependencies for: app/productApp
TypeError: errback is not a function
In module tree:
    app/productApp
      blah
        json

我的r.js构建配置文件:

define([
    'productApp',
    'json!blah'
], function(...){...}

这是我的r.js配置文件:

({
      name: 'app/productApp',
      out: '../app.js',
      optimize: 'uglify2',
      findNestedDependencies: true,
      inlineJSON: false,
      inlineText: false,
      exclude: [ 'json!blah' ]
)}

我已经尝试了所有可能的方法,例如在r.js配置文件中排除,或者添加'!bust'在依赖列表的末尾,但没有运气。

Require.js / R.js版本:2.2.0

一个细节:我通过节点package.json脚本运行r.js,由maven触发。

思想?

1 个答案:

答案 0 :(得分:0)

找到解决方案。事实证明,需要配置文件中缺少json和文本库的路径。 (它不能只是在r.js构建配置文件中变成'空:'。

这样可以解决问题:

... 
paths: {
  'text': 'lib/text',
  'json': 'lib/json',
  ...
},
exclude: {
  'json!blah'
}