2014-02-12 24 views
1

我到達這裏之前搜索了很多論壇,博客和網站。 我正在製作一個WebApp,並且需要使用Synchronize.js來避免WebSQL凌亂的異步。 在我的html頁面中添加命令時。如何使用Browserify實現Synchronize.js?

var synchronize = require('synchronize'); 

我得到一個錯誤:

Uncaught ReferenceError: require is not defined 

閱讀中,我得出一個結論Browserify被要求使用節點符號「需要」的網絡。 我從故宮安裝Browserify,前往該文件的位置,並運行此代碼:

browserify sync.js sync > bundle.js 

錯誤產生的是:

Error: module "fibers" not found from "/..my dirs../js/sync.js" 

我想:

browserify collection.js > bundle.js 

其中collection.js包含

var fs = require('fs'); 
    var synchronize = require('synchronize'); 

這編譯沒有問題。

當我bundle.js文件添加到我的html頁面我在控制檯得到一個錯誤:

Uncaught TypeError: Cannot read property 'v8' of undefined 

---有人可以請有關如何使用Synchronize.js和Browserify的細節解釋我在網上的教程中遇到了阻塞的問題。

預先感謝您。

+0

長話短說:不可能 – vkurchatkin

+0

這是爲什麼?我的理解是Synchronize.js可以在瀏覽器上工作。 你有任何想法如何強制異步代碼在瀏覽器上運行同步? –

+1

Fibers是本地模塊,不會在瀏覽器中運行。同步是一個纖維包裝,所以我懷疑它在瀏覽器中運行。 –

回答

2

synchronize.js依賴Fibre擴展到node.js.可悲的是,不可能將瀏覽器中的Fibers與node.js一起使用。

所以答案是 - synchronize.js不能與瀏覽器上使用,只能用Node.js的

+0

也許可以創建一個不依賴於光纖的軟解決方案。但取決於人造的。 –

相關問題