2017-03-09 67 views
0

我有一個很大的JavaScript遺留代碼基地的WebApplication,其中包括演示/數據模型/控制器/連接。我試圖用ReactNative替換表示層技術,同時保留現有的數據模型/控制器/連接部分。所以第一個問題是,在我構建了定義了UI佈局的ReactNativeComponent之後,綁定建立了樣式創建......但我需要從遺留代碼中調用一些js函數。 如何將一個現有的js文件(不是ReactNativeComponent)導入到一個ReactNativeComponent並使用它?如何導入/要求現有的非反應本機組件JS到反應本地組件

回答

1

如果他們純粹是JS,那麼你可以正常導入它們。如果他們與html/css/dom有任何關係,它會拋出一個錯誤。

2

我也有過這個問題。我所做的一些事情,無法找到更優雅的解決方案,就是將我的遺留代碼包裝在一個模塊中。

比方說,這是foo.js

var Foo = (function() { 
    var mod = { 
    init: function() { 
     // legacy code here... 
    } 
    } 

    return mod; 
})() 

module.exports = Foo; 

則呼籲文件:

import foo from './somewhere/foo'; 
foo.init(); 

我不喜歡這種方式,但它的工作。希望它可以有所幫助。