javascript - ES6 解构

标签 javascript ecmascript-6 destructuring

我有一个与此类似的文件:

const COLORS = {
  PRIMARY_COLOR: 'red',
  SECONDARY_COLOR: 'green'
};

const APP = {
  APP_COLOR: GRAY_DARK,
  APP_FONT_SIZE: FONT_SIZE_NORMAL,
  APP_FONT_WEIGHT: FONT_WEIGHT_NORMAL,
  APP_SEPARATOR_COLOR: GRAY_LIGHT
};

export default {
  ...COLORS,
  ...APP
};

问题是当我尝试从另一个文件解构该对象时,我得到未定义的值?

import theme, { PRIMARY_COLOR } from '../../../themes/default';

打印主题对象效果很好 但打印 PRIMARY_COLOR 未定义

有什么帮助吗?

最佳答案

导入中的 {} 语法用于“命名”导入,而不是解构。

只需这样做:

import theme from '../../../themes/default';

const { PRIMARY_COLOR } = theme;

关于javascript - ES6 解构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52184126/

相关文章:

javascript - 为什么使用 App Engine Channel API 时需要进行如此多的 XHR 轮询

javascript - 在 AngularJS 中使用多个主题的最佳方式是什么

rust - 在 Rust 中的 match 语句中解构 Option<Box<_>>

typescript - 将类型断言与解构赋值结合使用的最佳方式是什么?

javascript - JS 数组解构 - 它是如何给出这个输出的?

javascript - 如何防止 Cognos 中的页面刷新?

javascript - 令人沮丧的 Javascript 错误

javascript - 在 es6 类上创建私有(private)成员

javascript - AngularJS 1.6 + ES6 - $doCheck 被调用两次

reactjs - 当名称不以大写字母开头时导入不起作用