2014-03-13 18 views
2

我想在我的網站中實現JINT,使用Ace文本編輯器讓管理員在javascript中編寫一些腳本。到目前爲止,這看起來很好,但我很難找到一些具體的信息。JINT - 解析中可以包含外部Javascript嗎?

本質上,我需要創建一些特定的JavaScript「對象」與一些附加到他們的功能。在普通的javascript中這是沒有問題的,但是我很好奇JINT是否可以處理這種情況,並允許我在準備運行腳本時從*.js文件加載這些對象?我在這個話題上挖了一圈,沒有找到很多答案。主要是我發現的唯一半結論就在這裏; Stackoverflow Question

任何幫助表示讚賞,因爲我是新的JINT的整個概念,並發現它是一個有趣的方法..但有很多困惑。如果還有其他類似於JINT的引擎,但更適合這一點,我們也會讚賞建議。

回答

4

一旦您實例化了Engine對象,您可以根據需要多次調用Execute()。所以你要做的是在你的文本編輯器中執行腳本之前,只需執行你想包含的腳本。

這應該是這樣的:

var script1 = System.IO.File.ReadAllText('script1.js'); 
var script2 = System.IO.File.ReadAllText('script2.js'); 

var engine = new Jint.Engine(); 
engine.Execute(script1); 
engine.Execute(script2); 
engine.Execute(aceditor.Text); 
+0

順便說一句,你需要使用Github上的版本(HTTPS: //github.com/sebastienros/jint)或NuGet(https://www.nuget.org/packages/Jint) –

+0

再次感謝您的幫助。到目前爲止,我喜歡Jint。 – Ciel

+1

@SébastienRos-MSFT Hi..i試着複製粘貼這個腳本https://raw.githubusercontent.com/faisalman/ua-parser-js/master/src/ua-parser.js裏面的engine.execute,但我得到一個在Jint.dll中發生未處理的類型爲'Jint.Runtime.JavaScriptException'的異常..你能幫忙嗎? –

0

您也可以嘗試Edge.js,在那裏你可以導入節點模塊

相關問題