質問編集履歴

7

2020/08/27 13:10

投稿

ug_o
ug_o

スコア39

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,8 @@
1
1
  ### 実現したいこと
2
2
 
3
3
  Firestoreから単一Documentを取得したいのですが、うまくいきません。
4
+
5
+ userDocがundefinedになります。
4
6
 
5
7
  記述方法が間違っているのでしょうか。
6
8
 

6

タイトルの変更

2020/08/27 13:10

投稿

ug_o
ug_o

スコア39

test CHANGED
@@ -1 +1 @@
1
- Firestoreからデータを取得
1
+ Firestoreから単一Documentを取得したい
test CHANGED
@@ -1,6 +1,6 @@
1
1
  ### 実現したいこと
2
2
 
3
- Firestoreからデータを取得したいのですが、うまくいきません。
3
+ Firestoreから単一Documentを取得したいのですが、うまくいきません。
4
4
 
5
5
  記述方法が間違っているのでしょうか。
6
6
 

5

ソースの修正

2020/08/27 02:04

投稿

ug_o
ug_o

スコア39

test CHANGED
File without changes
test CHANGED
@@ -12,29 +12,9 @@
12
12
 
13
13
  ```JS
14
14
 
15
- export class Edit extends React.Component {
15
+ async componentDidMount() {
16
16
 
17
- constructor(props) {
18
-
19
- super(props);
20
-
21
- this.inputRef = React.createRef();
22
-
23
- this.state = {
24
-
25
- name: "",
26
-
27
- profileImageUrl: "",
28
-
29
- };
30
-
31
- }
32
-
33
-
34
-
35
- async componentDidMount() {
36
-
37
- // Firestoreからユーザ情報を取得
17
+ // TODO: Firestoreからユーザ情報を取得
38
18
 
39
19
  try {
40
20
 
@@ -42,17 +22,9 @@
42
22
 
43
23
  const user = getCurrentUser();
44
24
 
45
- const querySnapshot = await db.collection("users").doc(user.uid).get()
25
+ const userDoc = await db.collection("users").doc(user.uid).get();
46
26
 
47
-
48
-
49
- const userDoc = "";
50
-
51
- querySnapshot.forEach(doc => {
52
-
53
- userDoc.push(doc.data());
27
+ console.log(userDoc.data());
54
-
55
- });
56
28
 
57
29
  this.setState({
58
30
 

4

タグの追加

2020/08/27 01:58

投稿

ug_o
ug_o

スコア39

test CHANGED
File without changes
test CHANGED
File without changes

3

書式の改善

2020/08/26 07:05

投稿

ug_o
ug_o

スコア39

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,10 @@
1
1
  ### 実現したいこと
2
2
 
3
3
  Firestoreからデータを取得したいのですが、うまくいきません。
4
+
5
+ 記述方法が間違っているのでしょうか。
6
+
7
+ よろしくお願いいたします。
4
8
 
5
9
 
6
10
 
@@ -8,7 +12,7 @@
8
12
 
9
13
  ```JS
10
14
 
11
- export class EditSocial extends React.Component {
15
+ export class Edit extends React.Component {
12
16
 
13
17
  constructor(props) {
14
18
 
@@ -18,7 +22,7 @@
18
22
 
19
23
  this.state = {
20
24
 
21
-     name: "",
25
+ name: "",
22
26
 
23
27
  profileImageUrl: "",
24
28
 
@@ -34,11 +38,21 @@
34
38
 
35
39
  try {
36
40
 
41
+ const db = firebase.firestore();
42
+
37
43
  const user = getCurrentUser();
38
44
 
39
- const userDoc = await db.collection("users").doc(user.uid).get();
45
+ const querySnapshot = await db.collection("users").doc(user.uid).get()
40
46
 
47
+
48
+
41
- console.log(userDoc);
49
+ const userDoc = "";
50
+
51
+ querySnapshot.forEach(doc => {
52
+
53
+ userDoc.push(doc.data());
54
+
55
+ });
42
56
 
43
57
  this.setState({
44
58
 

2

文法の修正

2020/08/26 07:03

投稿

ug_o
ug_o

スコア39

test CHANGED
File without changes
test CHANGED
@@ -55,3 +55,5 @@
55
55
  }
56
56
 
57
57
  }
58
+
59
+ ```

1

文法の修正

2020/08/24 08:45

投稿

ug_o
ug_o

スコア39

test CHANGED
@@ -1 +1 @@
1
- Firestoreのコレクションから特定のフィルドを取得して、描画させたい。
1
+ Firestoreからを取得
test CHANGED
@@ -1,20 +1,6 @@
1
1
  ### 実現したいこと
2
2
 
3
- FirebaseAuthでログイン中のドキュメント(uid)を取得してusersコレクションフィールドの値を取得し、<Input>タグに描画させたいです。
4
-
5
- 今回はnameフィルドを取得して下記の箇所に描画できるようにしたいのですが、うまくいきません。
3
+ Firestoreからデを取得したいのですが、うまくいきません。
6
-
7
- ```ここに言語を入力
8
-
9
- <Input
10
-
11
- value={this.state.name}
12
-
13
- />
14
-
15
-
16
-
17
- ```
18
4
 
19
5
 
20
6
 
@@ -32,6 +18,8 @@
32
18
 
33
19
  this.state = {
34
20
 
21
+     name: "",
22
+
35
23
  profileImageUrl: "",
36
24
 
37
25
  };
@@ -42,7 +30,7 @@
42
30
 
43
31
  async componentDidMount() {
44
32
 
45
- // TODO: Firestoreからユーザ情報を取得
33
+ // Firestoreからユーザ情報を取得
46
34
 
47
35
  try {
48
36
 
@@ -56,8 +44,6 @@
56
44
 
57
45
  name: userDoc.data.name,
58
46
 
59
- about: userDoc.data.about,
60
-
61
47
  profileImageUrl: userDoc.data.image,
62
48
 
63
49
  });
@@ -69,75 +55,3 @@
69
55
  }
70
56
 
71
57
  }
72
-
73
- ////省略////
74
-
75
- render() {
76
-
77
- return (
78
-
79
- <BaseLayout>
80
-
81
- <Column sidenav>
82
-
83
- <EditNav/>
84
-
85
- <div>
86
-
87
- <HeroText small="プロフィール">
88
-
89
- </HeroText>
90
-
91
- <Container>
92
-
93
- <FormItem label="アイコン">
94
-
95
- <UploadIcon/>
96
-
97
- </FormItem>
98
-
99
- <FormItem label="ユーザー名">
100
-
101
- <Input
102
-
103
- value={this.state.name}
104
-
105
- />
106
-
107
- </FormItem>
108
-
109
- <FormItem label="自己紹介">
110
-
111
- <TextArea/>
112
-
113
- </FormItem>
114
-
115
- <FormItem>
116
-
117
- <Button>
118
-
119
- 設定を保存
120
-
121
- </Button>
122
-
123
- </FormItem>
124
-
125
- </Container>
126
-
127
- </div>
128
-
129
- </Column>
130
-
131
- </BaseLayout>
132
-
133
- );
134
-
135
- }
136
-
137
- }
138
-
139
-
140
-
141
- export default withAuth(EditSocial);
142
-
143
- ```