声明 ES2018 期间的内联价差运算符



我想做这样的事情:

const translations = {
    en: {
        statistics_title: 'Statistics'
    },
    ru: {
        statistics_title: 'Статистика'
    },
    uk: {
        ...ru
    }
}

显然它不起作用,当然,我可以设置另一个 const,然后使用它,但我很懒(所以我很好奇 javascript 是否允许你这样做?

除非它是方法,否则不能在对象中自引用。

你可以做:

const translations = {
    en: {
        statistics_title: 'Statistics'
    },
    ru: {
        statistics_title: 'Статистика'
    },
    get uk () {
        return this.ru
    }
}

编辑

如果您希望translations.uk不是ru的副本并以这种方式保存自己的数据是行不通的。这只是将translations.uk设置为对translations.ru的引用

您必须在传播之前声明此ru值,即:

const ru = {
    statistics_title: 'Статистика'
};
const translations = {
    en: {
        statistics_title: 'Statistics'
    },
    ru,
    uk: {
        ...ru
    }
};

相关内容

  • 没有找到相关文章

最新更新