2016-11-29 40 views
1

我想在R語言中使用RiTa.js,但我的代碼不會加載正確的庫。我該如何解決它?如何通過「V8」包使用R語言的Javascript庫?

腳本

library(V8) 

ct <- v8() 

ct$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js") 


ct$eval("var s = 'it was a dark and stormy night.';") 

ct$eval("var r = new RiString(s);") 

結果

Error in context_eval(join(src), private$context) : ReferenceError: RiString is not defined 

回答

3

我想你只需要進行小幅調整,以得到這個啓動和運行。 RiTa JavaScript預計在可用的window的瀏覽器中。 R V8中的默認值是global。幸運的是,我們可以通過global="window"參數輕鬆更改。

library(V8) 

ctx <- v8(global="window") 
ctx$source("https://cdnjs.cloudflare.com/ajax/libs/rita/1.1.51/rita-full.js") 
ctx$get("Object.keys(window)") 

您現在應該看到所有可供使用的RiTa.js。

[1] "console"  "print"  "window"  "ArrayBuffer" 
    [5] "Int8Array" "Uint8Array" "Int16Array" "Uint16Array" 
    [9] "Int32Array" "Uint32Array" "Float32Array" "Float64Array" 
[13] "DataView"  "_RiTa_LTS" "RiTa"   "RiString"  
[17] "RiGrammar" "RiMarkov"  "RiWordNet" "RiLexicon" 
[21] "RiTaEvent"