grunt-browserify路径必须是字符串错误

时间:2016-06-03 02:09:54

标签: javascript gruntjs browserify grunt-browserify

我正在尝试#include <string> #include <iostream> int main() { std::string str = "An R&D string with one more R&amp;D here and S&D or T&engrave; Some More T&D and &amp;&engrave; and R&&D"; std::cout<<"original string is : "<<str<<std::endl; int index = 0; while(1) { std::string::size_type n = str.find("&",index); if(n == std::string::npos) break; std::string sub = str.substr(n+1, 10); std::string::size_type m = sub.find("&"); std::string::size_type b = sub.find(";"); if(m != std::string::npos && m<b) { auto temp = sub.substr(0,m-1); sub = temp; } if(sub.find(";") == std::string::npos) { str.replace(n, 1, "&amp;"); } index = n+1; } std::cout<<"changed string is : "<<str<<std::endl; } 。我一直得到“路径必须是字符串”错误。

这是我的grunt-browserify任务:

browserify

这会返回browserify: { dist: { files: { "build/Hotspot.js" : ["lib/**/*.js"] }, options: { transform: ["babelify", { presets: "es2015" }] } } }, 错误。但是,如果我将Path must be a string更改为

files

任务运行,但似乎没有任何代码被编译或捆绑。 "build/Hotspot.js" : ["/lib/**/*.js"]只是标准的browserify错误处理,没有别的。

在设置build/Hotspot.js时,我做错了吗?

编辑1:我应该注意Gruntfile存在并且其中包含文件。此外,lib/会产生相同的错误。

1 个答案:

答案 0 :(得分:1)

我认为解决方案的线索在grunt-browserify docs,特别是:

  

变换也可以提供选项哈希;在这种情况下,   变换应指定为[transformStringOrFn的数组,   optionsHash]。

我认为这告诉我们为了将选项哈希传递给变换,options.tranform值必须是数组数组:

transform: [
    ["babelify", { presets: "es2015" }]
]