我在Backbone JS中使用JaydData。在应用程序的开始页面上,我使用JayData上下文:
$data.Entity.extend('$todo.Types.ToDoEntry', {
Id: { type: 'int', key: true, computed: true },
Value: { type: 'string' },
CreatedAt: { type: 'datetime' },
ModifiedAt: { type: 'datetime' },
Done: { type: 'bool' }
});
$data.EntityContext.extend('$todo.Types.ToDoContext', {
TodoEntries: { type: $data.EntitySet, elementType: $todo.Types.ToDoEntry }
});
$todo.context = new $todo.Types.ToDoContext({ name: provider, databaseName: 'todo' });
$todo.context.onReady({
success: updateView,
error: function () {
$todo.context = null;
updateView();
}
在此页面上$todo.context
可用于执行数据库操作。
但是当我导航到其他应用程序页面时,$todo.context
不可用。
如何在Backbone应用程序的所有页面上获取$todo.context
?
感谢。
答案 0 :(得分:2)
您应该能够重复使用您在其他网页上提供的代码。如果您想在多个页面中保存它,可以考虑将其附加到session variable。祝你好运!
答案 1 :(得分:2)
尝试使用' $ .todo.context'编写新的JS文件。并使用require js将其加载为模块, 这样您就可以在每个页面中定义此依赖关系。
看看如何使用RequireJS。
http://requirejs.org/docs/start.html
我在我的博客中有一个关于此主题的帖子,不幸的是它只能用葡萄牙语提供。尝试使用谷歌翻译。
http://www.rcarvalhojs.com/backbone/2014/06/03/comecando-require-backbone.html
希望它有所帮助!