我的React Native项目中有颜色,我想知道是否可以将颜色存储在类似于使用SASS的变量中 - 命名它们并将它们保存在单独的文件中。下面是一些输入字段的样式示例。
module.exports = StyleSheet.create({
textInput:{
backgroundColor: '#fff',
color: '#666',
height: 60,
marginBottom: 20,
marginLeft: 20,
marginRight: 20,
paddingLeft: 10,
paddingRight: 10,
}
});
我想知道我是否可以做类似的事情(SASS):
$cornflower-blue: #6195ED;
(其他颜色变量在单独的文件中)
article {
background-color: $cornflower-blue;
}
提前致谢。
答案 0 :(得分:4)
你可以在JavaScript中使用变量。
colors.js
export const cornFlowerBlue = '#6195ED';
当你想使用它时
import {cornFlowerBlue} from './colors';
...
module.exports = StyleSheet.create({
article {
backgroundColor: cornFlowerBlue,
}
});
编辑:$ cornflower-blue不能用作名称,因为-
保留用于减法。
答案 1 :(得分:1)
我建议你react-native-extended-stylesheet支持全局和局部变量,如SASS:
// app entry: set global variables
EStyleSheet.build({
textColor: '#0275d8'
});
// component: use global variables
const styles = EStyleSheet.create({
text: {
color: '$textColor'
}
});
答案 2 :(得分:0)
我使用一个设置文件,我在我的应用程序中导入任何常量
'use strict';
var settings = {
siteURL: 'http://www.website.com',
green: '#80bc5a',
lightGreen: '#c0dead',
lightGrey: '#f1efeb',
darkGrey: '#54575a',
brown: '#867f75',
};
var settings = require('./Settings')
module.exports = settings;
var { siteURL, green } = settings