2016-09-12 12 views
1

React router Linkを使用して新しいウィンドウでコンポーネントをレンダリングしていますが、この新しいコンポーネントにデータを渡す方法があります。私が渡したいデータはJSONデータなので、URLに表示されているparamまたはqueryとして渡します。新しいウィンドウでレンダリングするときにコンポーネントにデータを渡す方法

新しいウィンドウで開くときにデータを渡すための他のオプションはありますか?

答えて

0

使用新しいオプションの1:

  • のlocalStorage
  • のIndexedDB

  • のpostMessage(https://plnkr.co/edit/YrG1KNrc1CvLCp8A1ucG

    <script> 
    var popup = window.open('data:text/html;charset=utf-8;base64,PHNjcmlwdD5mdW5jdGlvbiByZWNlaXZlTWVzc2FnZShldmVudCkgeyBldmVudC5zb3VyY2UucG9zdE1lc3NhZ2UoImhpIHRoZXJlIHlvdXJzZWxmISB0aGUgc2VjcmV0IHJlc3BvbnNlIGlzOiAiICsgZXZlbnQuZGF0YSwgIioiKTsgY29uc29sZS5sb2coIldlIHJlY2VpdmVkIHRoZSBtZXNzYWdlOiAiICsgZXZlbnQuZGF0YSk7IH0gd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLCByZWNlaXZlTWVzc2FnZSwgZmFsc2UpOzwvc2NyaXB0Pg=='); 
    
    function receiveMessage(event) 
        { 
        console.log("The message from the data:URI is: " + event.data); 
        } 
    
    function foo() 
        { 
        popup.postMessage("The user is 'bob' and the password is 'secret'", "*"); 
        popup.postMessage("hello there!", "*"); 
        } 
    
    window.addEventListener("message", receiveMessage, false); 
    window.setTimeout(foo, 2000); 
    </script> 
    

REFE rences

関連する問題