将代码转换为打字稿 - 干净的方式

时间:2018-06-18 00:28:15

标签: javascript typescript coding-style

我正在尝试将一些JS代码转换为typescript(并在一般情况下清理它)......

这就是我目前所拥有的:

const EVENT_TYPES = ['coffee', 'lunch', ''];

const ALIAS_EVENT_TYPES = {
    cafe        : 'coffee',
    caffe       : 'coffee',
    meal.      : ‘lunch’
};

let TYPES = createTypeDictionary();

function createTypeDictionary() {
    let types : any = {};
        _.each(EVENT_TYPES, function(type) {
          if (type) {
              types[type] = type;
          }
      });
      _.each(ALIAS_EVENT_TYPES, function(type, index) {
          types[index] = type;
      });
    return types;
  }

我的问题是:

  1. 有更简洁,更清洁的方法吗? (我无法摆脱EVENT_TYPES或ALIAS_EVENT_TYPES)
  2. 的方式
  3. 现在我有“让类型:任何= {};” - 有没有更好的方法来指定类型将是字典?或者可以吗?
  4. 该函数的返回类型应该是什么?宾语?
  5. 我想我的一般问题是 - 如何改进此代码?清理它和更好的打字稿?

1 个答案:

答案 0 :(得分:0)

  

清理它和更好的打字稿?

使用字符串union:

type EVENT_TYPES = 'coffee' | 'lunch';