Acme.BookStore.HttpApi.Host/node_modules/resolve-options/index.js
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
'use strict';
var normalize = require('value-or-function');
var slice = Array.prototype.slice;
function createResolver(config, options) {
// TODO: should the config object be validated?
config = config || {};
options = options || {};
var resolver = {
resolve: resolve,
};
// Keep constants separately
var constants = {};
function resolveConstant(key) {
if (constants.hasOwnProperty(key)) {
return constants[key];
}
var definition = config[key];
// Ignore options that are not defined
if (!definition) {
return;
}
var option = options[key];
if (option != null) {
if (typeof option === 'function') {
return;
}
option = normalize.call(resolver, definition.type, option);
if (option != null) {
constants[key] = option;
return option;
}
}
var fallback = definition.default;
if (option == null && typeof fallback !== 'function') {
constants[key] = fallback;
return fallback;
}
}
// Keep requested keys to detect (and disallow) recursive resolution
var stack = [];
function resolve(key) {
var option = resolveConstant(key);
if (option != null) {
return option;
}
后面还有 51 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
