新增: - backend/venv/ - Python 虚拟环境 - backend/start.sh - 启动脚本(使用虚拟环境) - backend/requirements.txt - 依赖列表 - .gitignore - 忽略虚拟环境和缓存文件 说明: - 每个项目使用独立虚拟环境 - 避免依赖冲突 - 启动脚本自动创建和激活虚拟环境
30 lines
841 B
JavaScript
30 lines
841 B
JavaScript
'use strict';
|
|
|
|
var getError = require('./get-error');
|
|
|
|
/**
|
|
* Where the given list is non-null and contains error instances then consolidate and throw
|
|
* @throws Error
|
|
* @param {string} resourcePath The path to the resource being processed
|
|
* @param {null|Array} candidates A possible Array with possible error elements
|
|
*/
|
|
function throwErrors(resourcePath, candidates) {
|
|
var errors = !!candidates && candidates
|
|
.filter(testIsError)
|
|
.map(getMessage);
|
|
|
|
var hasError = !!errors && errors.length;
|
|
if (hasError) {
|
|
throw getError(['For resource: ' + resourcePath].concat(errors).join('\n'));
|
|
}
|
|
|
|
function testIsError(candidate) {
|
|
return !!candidate && (typeof candidate === 'object') && (candidate instanceof Error);
|
|
}
|
|
|
|
function getMessage(error) {
|
|
return error.message;
|
|
}
|
|
}
|
|
|
|
module.exports = throwErrors; |