从Google电子表格导出到Firebase,ERROR

问题描述 投票:6回答:3

我认为我的大多数错误都来自Firebase的更新。但我到了那里。

还是很喜欢Firebase!

好的,我正在尝试将列演示Spreadsheet导出到Firebase(代码如下)。该错误似乎与Firebase参考有关。我知道如何在我的Firebase项目中修复它,但是它被挂钩到电子表格的脚本编辑器中。

错误:ReferenceError:未定义“FirebaseApp”。 (第13行,文件“export”)

function writeDataToFirebase() {
  var ss = 

SpreadsheetApp.openById("1rV2_S2q5rcakOuHs2E1iLeKR2floRIozSytAt2iRXo8");
  var sheet = ss.getSheets()[0];
  var data = sheet.getDataRange().getValues();
  var dataToImport = {};
  for(var i = 1; i < data.length; i++) {
    var year = data[i][0];
    dataToImport[year] = {
    caption:data[i][1]
  };
}

 var firebaseUrl = "https://test-db-9833d.firebaseio.com/";

 // ERROR HERE ********************************************

 var base = FirebaseApp.getDatabaseByUrl(firebaseUrl);
 base.setData("", dataToImport);

}
javascript firebase firebase-realtime-database google-sheets
3个回答
2
投票

以下是正确答案:在脚本中有一个资源选项卡来添加库:搜索:MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2l并选择11-static然后重新运行脚本

文档:https://sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase


0
投票

要使Google表格能够写入您的Firebase实例,可能有几个原因导致您无法写入,请检查以下内容:

  • 您是否授予了表格权限以访问您的Google帐户信息和文档
  • 你是否正确引用了firebase数据库url?
  • 你是否放松了对firebase的权限,出于测试目的,你可以编写qazxsw poi,只是为了看看它是否适用于启动,然后使用完整的烫发设置
  • 您是否尝试使用true等调试工具来查看您在登录特定代码段时获得的内容?

我也能够录制我的过程的全屏幕直播,你可以在这里观看:Logger.log

这里是我改为使用https://www.youtube.com/watch?v=9SIAnjgKZZQ&feature=youtu.be标题标题为我们的数据标签而不是“硬编码”方式的代码:)

dinamic

赫斯,克雷斯


0
投票

如果您使用纯JavaScript,请按如下方式初始化function onfire() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getDataRange(); var values = range.getValues(); var allvals = []; var row = {}; for(var i = 1; i < values.length; i++) { for( var j = 0; j < values[i].length; j++ ){ if( values[i][j] ) { row[ values[0][j].toString() ] = values[i][j] ; } } allvals.push( row ); // insert row row = {}; // blank template obj } var firebaseUrl = "https://my-android-app-demo1.firebaseio.com/sheet"; var base = firebase.getDatabaseByUrl(firebaseUrl, sec); // Logger.log( allvals ); base.setData("", allvals ); } 类:

FirebaseApp

或者,如果您使用Webpack或Browserify,则可以安装// Load Firebase library var firebaseScript = document.createElement('script'); firebaseScript.setAttribute('src', 'https://www.gstatic.com/firebasejs/4.1.1/firebase.js'); document.head.appendChild(firebaseScript); // Initialize Firebase // TODO: Replace with your project's customized code snippet var config = { apiKey: "<API_KEY>", authDomain: "<PROJECT_ID>.firebaseapp.com", databaseURL: "https://<DATABASE_NAME>.firebaseio.com", storageBucket: "<BUCKET>.appspot.com", messagingSenderId: "<SENDER_ID>", }; var app = firebase.initializeApp(config); 软件包,然后按如下方式对其进行初始化:

firebase
© www.soinside.com 2019 - 2024. All rights reserved.