2016-06-03 3 views
2

안녕하세요, comunity :) 반응 네이티브로 testapp에서 작업 중이며 로컬 저장 장소에서 이미지를 가져 오려고합니다. 실제 내가하고있는 일 : var에 이미지 직접 연결 소스를 제공하고이 메서드를 내 렌더링 함수에서 호출합니다.반응 네이티브 - 이미지가 JSON에서 로컬 경로가 필요합니다

*react: ^0.14.8 ||* 
*react-native: ^0.23.1||* 
*npm: 2.15.1 ||* 
*node: v4.4.4* 

작업 :

ImageCall-파일 (Imagefile.js) 생성 된 클래스 느릅 나무의 작품 위의 코드는 이름을 따서 명명된다

var samplepicture; 

setPicture(){ 
    samplepicture= require('./images/picture.png') 
} 
render() { 
    this.setPicture; 
    return(
     <Image source=samplepicture/> 
    ); 
} 

(Imagefile .js)

위의 방법은 꽤 잘 작동합니다.

이제 내 곳으로> 원하는 이미지 파일을 JSON 개체처럼 스타일이 지정된 별도의 js 파일에 저장하고 싶습니다.

작동하지 :

JS_JSON_File (pictureRef.js)

module.exports = { 
    "pictureRef": 
{ 
    "picture": './images/picture.png' 
}} 

ImageCall_File (Imagefile.js)

var pictureRef = require('./pictureRef.js'); 
var samplepicture; 

setPicture(){ 
    samplepicture= require(pictureRef.pictureRef.picture); 
} 
render() { 
    this.setPicture; 
    return(
     <Image source=samplepicture/> 
    ); 
} 

를 디버그 samplepicture : samplepicture = ./images/picture.png

는 관련이 있지만 확실하지가가 ''없이 포맷 된 문자열이기 때문이다. 또한 내 코드에 대해 setPicture() 함수로 이미지 소스를 설정해야한다는 점도 명심하십시오.

* 나는 코드의 두 버전을 모두 디버깅과 같은 출력했다 :

  • 버전 1 : samplepicture = ./images/picture.png
  • 버전 2 : samplepicture = ./images/picture합니다. PNG

*

이 내 첫 번째 질문 있음을 알아 두셔야와 난 정말 맞 모든 서식을 기대하십시오 티. 또한 나는 많은 관련 이슈들을 찾고 어떤 해결책을 찾지 못했습니다.

당신의 도움에 감사드립니다.

답변

1

내가 당신이 당신의 이미지를 추가() 필요로 사용하는 경우, 정적 경로가 아닌 변수를 제공해야한다고 생각이 issue1issue2

와는 비슷한 것 같다. 그들이 번들로 특정 이미지 소스를 알아야하기 때문입니다. json을 사용하면 불확실한 소스와 유사하므로 작동하지 않습니다. 이제는이 문제가 발생합니다.

+0

매우 빠른 답변 주셔서 감사합니다. 여기에 문제가있어 정적 인 경우 -> 내 앱에는 그림이 1 개 이상 있습니다. 내 setPicture 메서드에서 하나 또는 다른 그림 목록보기에서 사용되는 wheter 결정합니다. 그래서 json에 의해이 변수를 만드는 것은 매우 굉장합니다. 나는 당신의 연결된 문제로 작성된 몇 가지 솔루션을 시도 할 것입니다. 어쩌면 내가 맞는 솔루션을 찾을 수 있습니다. –

+0

나는 모든 것을 지쳤습니다. 이 두 가지 연결된 문제에서 해결책을 찾지 못했습니다. 어쨌든 당신에게 감사드립니다. 어쩌면 지금은 단지 –

+0

일 때만 가능하지 않습니다. 이제''' 'picture' '와 같은 pictureRef 코드를 변경할 수 있습니다 : require ('imagePath ')''', 그러면 pictureRef.picture를 사용하여 이미지 소스를 설정할 수 있습니다. –

관련 문제