2014-02-17 42 views
0

我正在嘗試使用durandal的taffydb。我能夠將簡單的json數據添加到ko.observableArray()(一位同事向我展示了:-))。在durandal中使用taffydb添加json數據

現在我想用taffydb保存它。

main.js:

requirejs.config({ 
    paths: { 
    'taffy': '../lib/db-master/taffy' 
    ... 
    } 
}); 

participant.js:

define(['durandal/app', 'knockout', 'models/user', 'taffy'], function (app, ko, user, taffy) { 
... 
} 

每當我補充一點:

var db = taffy; 
db.insert({record:1, data:"test"}); 

我得到這個錯誤:

遺漏的類型錯誤:不能調用方法'ins ert'未定義

將其保留將按預期添加測試數據。我是否拿着杜蘭達錯誤的方式?

問候 克勞斯

+0

在你調用.insert之前,你有沒有console.log'd taffy?將require.js標籤添加到您的問題中,因爲這是一個require.js問題,而不是可能的。 –

+0

我加了console.log(taffy),它是'undefined'。 console.log(ko)顯示[object Object]。所以它看起來沒有加載。 – kometen

回答

1

如果this code爲您加載的一個,那麼你需要在你傳遞給RequireJS配置的shim因爲太妃糖是不是AMD感知。我相信這應該工作:

shim: { 
    taffy: { 
     exports: "TAFFY" 
    } 
} 

我從來沒有用過太妃糖,所以我不知道它的依賴可能是什麼。您可能需要將deps: [...]字段添加到墊片中,以便提前加載依賴關係。

+0

太棒了。作品。是啊。 :-) – kometen