如何使用 CurrentUserId 在 Firebase 中进行 CRUD 操作?

How to do CRUD operations in Firebase with CurrentUserId?

我正在创建一个简单的网站,我不能使用 currentUserId 的 firebase 实时数据库 crud 操作。

我的授权系统运行良好;我可以 signIn/signUp/signOut 在数据库上。我可以通过从表单获取输入来将数据写入 firebase。

    //GETTING DATA WITH FORM
    
    // Listen for form submit
    document.getElementById('form').addEventListener('submit', submitForm);
    
    
    // Submit form
    function submitForm(e){
      e.preventDefault();
    
      // Get values
      var name = getInputVal('name');
      var sets = getInputVal('sets');
      var reps = getInputVal('reps');
      var weights = getInputVal('weights');
      
      // Write data
      writeData(name, sets, reps, weights);
    
      // Clear form
      document.getElementById('form').reset();
    }
    
    
    // Function to get form values
    function getInputVal(id){
      return document.getElementById(id).value;
    }
    
    
    //CRUD OPERATIONS
    
    // Reference
    var DataRef = firebase.database().ref('users/'  + 'exercises/');
    
    // Write data to database
    function writeData(name, sets, reps, weights){
      var newDataRef = DataRef.push();
      newDataRef.set({
    
        name: name,
        sets: sets,
        reps: reps,
        weights: weights,
        
      });
    }

直到解决了这个id问题,我才开始阅读、更新和删除。

那么如何对每个id用户进行CRUD操作呢?我能做什么?

您是在问如何在特定于当前用户的位置写入数据?如果是:

var currentUser = firebase.auth().currentUser;
var DataRef = firebase.database().ref('users/' + currentUser.uid + '/exercises/');

请注意,这仅在保证当前用户已登录的情况下有效。如果不能保证,请将上述代码放在 auth state listener.