FED

©FrontEndDev.org
2015 - 2024
web@2.23.0 api@2.21.1

v1.0.0 不得不说的4个情况

一、

构建时候一直报错,仔细检查,在html-tag-script.js中,有这么两行内容

var mainPath = path.join(options.srcCoolieConfigBaseDirname, dataMain);
var mainVersion = options.mainVersionMap[mainPath];

console.dir 查看options.mainVersionMap,发现key中的目录都是以“ \ ”存在的

然而mainPath是使用" / ",所以引发的错误

懒得去看上面是如何处理的了,也许windows惹的祸吧,于是简单改了一下

var mainPath = path.join(options.srcCoolieConfigBaseDirname, dataMain);
var mainVersion = options.mainVersionMap[mainPath];
if(!mainVersion){
mainPath = mainPath.replace(/\\/g, '\/');
mainVersion = options.mainVersionMap[mainPath];
}

问题解决

二、

构建完成之后data-config变成了以“ ~/ ”为开头的路径地址,引发了 data-main 的路径错误,尝试将" ~/ "以及后面部分的路径前缀删除,问题解决

三、以上都不重要

我最后发现一切问题都是由于目录引起的

	<script src="\js\1538092967eef73638103eb4e4df8488.js"  data-config="~\js\670669fd9b5ee4aa25444020e0f3a284.js" data-main="bd473490b7720e4f81fb3f6f54573845.js" ></script>

将以上 \ 全部替换为 / 后,上面问题都解决了,本人 win10 , node v4.2.2

四、最后一个问题

"dest": {
	"host": "/a/b/c"
}

// 绝对路径,相对他域
if (pathURI.isURL(options.destHost)) {
coolieConfigURI = pathURI.joinURI(options.destHost, coolieConfigURI);
}
// 相对本域
else {
coolieConfigURI = '~' + coolieConfigURI;
}

触发的是else,输出目录错误,应该是 "/a/b/c" + coolieConfigURI