javascript - 在不影响可读性的情况下同时从 'lodash' 、 'rxjs' 、 'ramda' 导入 { map }

标签 javascript node.js lodash ramda.js

如何从多个导入中导入 mapmerge 或任何其他函数?

import { map } from 'lodash';
import { map } from 'rxjs/operators';
import { map } from 'ramda';

显而易见的答案是:

import { map as _map } from 'lodash';
import { map as rxMap } from 'rxjs/operators';
import { map as RMap } from 'ramda';

但这很丑陋并且使代码模糊不清。由于静态分析的局限性,我认为这是一种 hack,不是解决方案,而是一种解决方法

我可以想出另一种方法:

import * as _ from 'lodash';
import { map } from 'rxjs/operators';
import * as R from 'ramda';

但是,由于 tree-shaking 的原因,JS 社区对此不以为然。但是,我认为它过度夸大only saving 45kb .

最佳答案

基本上您可以创建自己的实用程序包。例如:

// utils/lodash.js
export { map, get, set } from 'lodash';

// yourScript.js
import * as _ from 'utils/lodash';

关于javascript - 在不影响可读性的情况下同时从 'lodash' 、 'rxjs' 、 'ramda' 导入 { map },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52765483/

相关文章:

javascript - 如何向 ES6 javascript 类添加 mixins?

javascript - 单击事件仅在元素放置在标题中时触发

javascript - 如何传递解析值

javascript - 替换没有完整类名的类名

javascript - Node.js - 为什么这段代码不起作用?

javascript - Lodash - 使用 _.some 检查对象数组中的空数组

javascript - 带组件变量的 Angular 2 管道/过滤器

javascript - 如何使 Nodejs 调用同步然后我可以轻松使用它?

javascript - fs readFilesync 错误路径必须是字符串

javascript - Lodash:使用函数数组转换单个值