2017-05-28 13 views
0

シンプルなアプリケーションのためにstyles.jsapp.jsを分けました。そして私はグローバル定数変数として定義された画像リソースを持っています。 (ロゴとプロファイル用)これらの定数イメージリソースをstyles.jsに追加しようとしました。しかし、私の現在の方法と構文では、これらの定数イメージリソースはスタイル変数ラッパーで定義されていないため、styles.jsからエクスポートできません。反応スタイルで定義されたグローバル変数をエクスポートするjsファイル

styles.js

'use strict' 

import React, { Component } from 'react'; 
import {StyleSheet} from 'react-native'; 

/* 
    const background_img= require("../../resource/mybackground.png"); 
    I tried to define the resource path here 
*/ 

var styles = StyleSheet.create({ 
    /*Styles Definition*/ 
}); 

export default styles 

app.js

'use strict' 

import React, { Component } from 'react'; 
import { AppRegistry, Text, TextInput, View, Image, 
TouchableOpacity, Alert} from 'react-native'; 
import styles from './styles.js'; 

/*const background= require("../../resource/mybackground.png");*/ 
// I want to move this part to styles.js 


export class LoginScene extends Component { 

    constructor(props) { 
    super(props); 
    } 

    render() { 
    return (
     <Image 
     style={[styles.background, styles.container]} 
     source={background} //I want to replace to styles.background_img 
     resizeMode="cover" 
     ></Image> 
     /*Other view definitions*/ 
    ); 
    } 
} 

export default LoginScene 

私はコメントで上記のコードでは、私の変更をしたい場所を私が示されました。上記のようにソースファイルをルーティングしたい場合は、styles.jsで何を変更する必要がありますので、変数変数wrapperで同時に定数グローバル変数をエクスポートできますか?

答えて

3

デフォルトでスタイルをエクスポートし、値またはオブジェクトを含むことができる他の変数をエクスポートすることもできます。 、私が見

import styles, { assets } from './styles.js'; 
+0

をこの作品:

import React, { Component } from 'react'; import {StyleSheet} from 'react-native'; export const assets = { background: require("../../resource/mybackground.png"), } var styles = StyleSheet.create({ /*Styles Definition*/ }); export default styles; 

その後、必要なときに、あなただけのデフォルトと名前の輸出をインポートすることができます。つまり、他の '* .js'ファイルからのみjsonオブジェクトをエクスポートできますか? –

+0

正確には、変数、定数、関数、クラス、配列、オブジェクトをエクスポートすることはできません。ファイルごとに1つの 'export default'しか使用できないことを覚えておいてください。 es6モジュールについてのこのガイドをチェックしてください:http://exploringjs.com/es6/ch_modules.html – nicokant

+0

これは本当に有益で、upvotesと受け入れの価値があります。 –

関連する問題