1
A
回答
2
Swig不关心/了解扩展。你可以尝试写一个custom loader为你做这个。只需复制文件系统加载程序,并检查给定的路径是否包含扩展名,如果是,请使用默认值。
var fs = require('fs'),
path = require('path');
module.exports = function (basepath, encoding) {
var ret = {};
encoding = encoding || 'utf8';
basepath = (basepath) ? path.normalize(basepath) : null;
ret.resolve = function (to, from) {
if (basepath) {
from = basepath;
} else {
from = (from) ? path.dirname(from) : process.cwd();
}
return path.resolve(from, to);
};
ret.load = function (identifier, cb) {
if (!fs || (cb && !fs.readFile) || !fs.readFileSync) {
throw new Error('Unable to find file ' + identifier + ' because there is no filesystem to read from.');
}
// Start of added code...
var extension = path.extname(identifier);
if (!extension) {
// Set this to whatever you want as a default
// If the extension exists, like 'foo.xml', it won't add the '.html'
identifier += '.html';
}
// End of added code
identifier = ret.resolve(identifier);
if (cb) {
fs.readFile(identifier, encoding, cb);
return;
}
return fs.readFileSync(identifier, encoding);
};
return ret;
};
相关问题
- 1. 关于Struts默认扩展和json默认扩展
- 2. 扩展器的默认ControlTemplate
- 3. 扩展选择二默认
- 4. 将Apache2配置为在默认文件扩展名为URL时自动附加默认文件扩展名
- 5. Imacros ..文件默认附加扩展名,即使在提及扩展名时
- 6. 的php.ini默认迪尔扩展
- 7. 扩展Liferay的7默认的主题
- 8. Lo-dash扩展/分配默认行为
- 9. 如何扩展默认joomla类/函数?
- 10. 用默认方法扩展NSTableViewDataSource协议
- 11. 如何扩展SlickGrid的默认值?
- 12. 更改默认扩展桌子排
- 13. 铬扩展选项更改默认popup.html
- 14. XML:为避免XS /默认值:扩展
- 15. Symfony如何扩展默认包配置?
- 16. PHP过滤器扩展默认设置
- 17. 基础sass - 设置行默认扩展
- 18. jquery插件扩展默认值问题
- 19. AS3:扩展默认ScrollBar组件
- 20. jquery手风琴默认扩展
- 21. NVD3设置的扩展为默认
- 22. jQuery的 - 插件选项默认扩展()
- 23. MediaWiki扩展目录的默认位置
- 24. 扩展默认的php错误和error_log
- 25. 扩展Laravel默认的routes.php文件
- 26. 如何使SAPUI5 TreeTable默认扩展?
- 27. 默认一组可扩展列表的
- 28. Chrome扩展程序 - 编辑默认HTML
- 29. 扩展Spring数据的默认语法
- 30. 在OpenLDAP中扩展默认模式