2015-06-28 65 views
0

定義我初始化王牌編輯如下獲取運行王牌編輯器的實例在其他文件中

var editor = ace.edit("editor"); 

然而,在另一個文件中我更改該編輯器的值。我如何定位該編輯器而不創建新編輯器?換句話說,如果上面的代碼在scripts.js中,我需要將editor.setValue()的值從稍後加載的其他文件中更改,我們可以說edit.js,我該怎麼做?

回答

0

這取決於您的editor變量的範圍。

如果這是一個全局變量,你就應該能夠繼續使用

scripts.js中

var editor = ace.edit("editor"); 

edit.js

editor != 'undefined' 

你的唯一的事需要考慮的是執行的順序 - 例如,如果是edit.js文件在scripts.js文件之前加載(或之前被執行),那麼您的全局變量可能尚未定義

+0

但是,如果它不是全局變量呢?兩個不同的文件共享這樣一個全局變量是不太可能的,因爲編輯器只能在準備好的文檔上進行初始化,這限制了一個文件中變量的範圍。 –

+0

@BramVanroy您沒有展示足夠的代碼來猜測您是如何將您的解決方案放在一起的。僅僅因爲它是在'onready'中初始化的,並不意味着這個變量不是全局的 – jasonscript