'(child:) 必须是非空字符串且不包含 '.' '#' '$' '[' 或 ']''

问题描述 投票:0回答:1
    reference.child("StoryList").observe(.childAdded) { (snapshot) in
        let story = Story()
        story.name = snapshot.key
        self.storyArray.append(story)
        self.tableView.reloadData()
    }

我在 viewDidLoad() 中运行这个 整个控制台文本是:

2017-12-26 19:53:16.034777+0300 StoryMakers[5216:2326957] [Firebase/Analytics][I-ACS023007] Firebase Analytics v.40005000 已启动 2017-12-26 19:53:16.046994+0300 StoryMakers[5216:2326957] [Firebase/Analytics][I-ACS023008] 要启用调试日志记录,请设置以下应用程序参数:-FIRAnalyticsDebugEnabled(请参阅 ) 2017-12-26 19:53:16.227775+0300 StoryMakers[5216:2326960] TIC 读取状态 [1:0x0]: 1:57 2017-12-26 19:53:16.227820+0300 StoryMakers[5216:2326960] TIC 读取状态 [1:0x0]: 1:57 2017-12-26 19:53:17.635435+0300 StoryMakers[5216:2326934] * 由于未捕获的异常“InvalidPathValidation”而终止应用程序,原因:“(child:) 必须是非空字符串且不包含“.” '#' '$' '[' 或 ']''*

首先抛出调用堆栈: (0x185daa364 0x184ff0528 0x100f93824 0x100f6f4a0 0x100e771b4 0x100e77858 0x18f28bae8 0x18f28b6c0 0x18f40eb1c 0x18f331c4c 0x18f3 31890 0x18f331790 0x18f288f00 0x189ded998 0x189df1b20 0x189d5e36c 0x189d85b90 0x189d869d0 0x185d51edc 0x185d4f894 0x185d4fe50 0x 185c6fe58 0x187b1cf84 0x18f2ef67c 0x100e82ab0 0x18578c56c) libc++abi.dylib:以 NSException 类型的未捕获异常终止

它在 AppDelegate.swift 中显示“线程 1:信号 SIGABRT”。

如果我删除 self.tableView.reloadData() 它运行时不会出现错误。 如果我打印(snapshot.key),它会打印:

Crow Doggy Google 测试 Ворон Кот 到控制台。

ios swift firebase
1个回答
0
投票

我也遇到同样的问题

如果

dId == ""
我收到错误

ref.child("register").child(dId).setValue(userData)

线程 1:“(child:) 必须是非空字符串且不包含 '.' '#' '$' '[' 或 ']'"

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