我在Color.js上定义了一些const,但是当我在Screen.js上调用它时,一些Color是未定义的
我在本项目中使用react-native 0.45。这是我写的代码:
Color.js
export const ATHENS_GRAY = '#EDEEF0';
export const AQUA_SPRING = '#F8FBFD';
export const BLACK = '#000000';
export const BRIGHT_TURQUOISE = '#1BC1F1';
export const CATSKILL_WHITE = '#E4ECF4';
export const FROLY = '#F68181';
export const FUN_BLUE = '#1B61AD';
export const HIT_GRAY = '#A3AEB9';
export const JUMBO = '#7C7D80';
export const LIMED_SPRUCE = '#3D474C';
Screen.js
import React, {Component} from 'react';
import { View, Text, FlatList, StyleSheet } from 'react-native';
import * as Color from './Color';
export default class Screen extends Component {
constructor(props) {
super(props);
console.log(Color.BRIGHT_TURQUOISE);
console.log(Color.FUN_BLUE);
}
render() {
return (<View/>)
}
}
console.log的结果:
Color.BRIGHT_TURQUOISE未定义
Color.FUN_BLUE是'#1B61AD'
你有什么想法解决这个问题吗?
答案 0 :(得分:2)
我已经使用react-native log-android
在我的终端上试了一下,
这两个值都是这样得到的:
或许您可以尝试其他方式在Color.js
上导出常量,如下所示:
module.exports = Object.freeze({
ATHENS_GRAY : '#EDEEF0',
AQUA_SPRING : '#F8FBFD',
BLACK : '#000000',
BRIGHT_TURQUOISE : '#1BC1F1',
CATSKILL_WHITE : '#E4ECF4',
FROLY : '#F68181',
FUN_BLUE : '#1B61AD',
HIT_GRAY : '#A3AEB9',
JUMBO : '#7C7D80',
LIMED_SPRUCE : '#3D474C',
});
你可以再试一次:))