@@ -825,21 +825,21 @@ HTTP 请求
825
825
826
826
201
827
827
00:09:15,030 --> 00:09:16,998
828
- 这个特性可以用于追踪 struct
828
+ 这个特性可以用于追踪结构体
829
829
什么时候发生改变
830
830
831
831
202
832
832
00:09:16,998 --> 00:09:19,110
833
- 所以,当 Model 是 struct 时
833
+ 所以,当模型是结构体时
834
834
835
835
203
836
836
00:09:19,110 --> 00:09:22,710
837
- ViewModel 很容易就能知道 Model
837
+ 视图模型很容易就能知道模型
838
838
什么时候发生改变
839
839
840
840
204
841
841
00:09:22,710 --> 00:09:24,600
842
- 如果 Model 是一个 SQL 数据库的话
842
+ 如果模型是一个 SQL 数据库的话
843
843
844
844
205
845
845
00:09:24,600 --> 00:09:26,980
@@ -856,20 +856,20 @@ ViewModel 很容易就能知道 Model
856
856
857
857
208
858
858
00:09:33,270 --> 00:09:34,303
859
- 但 Model 的这些改变
859
+ 但模型的这些改变
860
860
861
861
209
862
862
00:09:34,303 --> 00:09:36,980
863
- 能否被收到就要看 ViewModel 的了
863
+ 能否被收到就要看视图模型的了
864
864
865
865
210
866
866
00:09:36,980 --> 00:09:40,477
867
- 这是 ViewModel 主要的工作之一
867
+ 这是视图模型主要的工作之一
868
868
869
869
211
870
870
00:09:40,477 --> 00:09:44,250
871
871
接下来,当数据发生改变的时候
872
- ViewModel 可能会对数据进行处理
872
+ 视图模型可能会对数据进行转换
873
873
874
874
212
875
875
00:09:44,250 --> 00:09:46,140
@@ -895,41 +895,39 @@ ViewModel 可能会对数据进行处理
895
895
896
896
217
897
897
00:09:58,090 --> 00:10:01,820
898
- 但要知道,它没有引用任何一个 View
898
+ 但要知道,它没有引用任何一个视图
899
899
900
900
218
901
901
00:10:01,820 --> 00:10:04,270
902
- ViewModel 不会直接引用
903
- 它的 View
902
+ 视图模型不会直接引用它的视图
904
903
905
904
219
906
905
00:10:04,270 --> 00:10:05,860
907
906
理解这点相当重要
908
907
909
908
220
910
909
00:10:05,860 --> 00:10:10,590
911
- ViewModel 不会直接和它的 View
912
- 进行通信
910
+ 视图模型不会直接和它的视图进行通信
913
911
914
912
221
915
913
00:10:10,590 --> 00:10:11,934
916
- 当 Model 发生改变的时候
914
+ 当模型发生改变的时候
917
915
918
916
222
919
917
00:10:11,934 --> 00:10:15,610
920
- ViewModel 会发布相关通知
918
+ 视图模型会发布相关通知
921
919
922
920
223
923
921
00:10:15,610 --> 00:10:20,350
924
- 然后 View 也订阅了相关的通知
922
+ 然后视图也订阅了相关的通知
925
923
926
924
224
927
925
00:10:20,350 --> 00:10:22,760
928
926
当它知道有东西发生了改变
929
927
930
928
225
931
929
00:10:22,760 --> 00:10:25,780
932
- 它就会去问 ViewModel
930
+ 它就会去问视图模型
933
931
934
932
226
935
933
00:10:25,780 --> 00:10:27,480
@@ -942,31 +940,31 @@ ViewModel 会发布相关通知
942
940
943
941
228
944
942
00:10:30,297 --> 00:10:32,490
945
- 至于为什么它不直接去问 Model
943
+ 至于为什么它不直接去问模型
946
944
947
945
229
948
946
00:10:32,490 --> 00:10:34,610
949
- 而是去问 ViewModel
947
+ 而是去问视图模型
950
948
951
949
230
952
950
00:10:34,610 --> 00:10:36,480
953
- 是因为 ViewModel 可能需要
951
+ 是因为视图模型可能需要
954
952
955
953
231
956
954
00:10:36,480 --> 00:10:38,240
957
- 帮 View 处理一下 Model 的数据
955
+ 帮视图转换一下模型的数据
958
956
959
957
232
960
958
00:10:38,240 --> 00:10:40,720
961
- 也可能是 ViewModel 需要
959
+ 也可能是视图模型需要
962
960
963
961
233
964
962
00:10:40,720 --> 00:10:42,870
965
- 保护 Model,避免那些不怀好意的 View
963
+ 保护模型,避免那些不怀好意的视图
966
964
967
965
234
968
966
00:10:42,870 --> 00:10:44,780
969
- 对 Model 做一些不好的事情
967
+ 对模型做一些不好的事情
970
968
971
969
235
972
970
00:10:44,780 --> 00:10:46,927
@@ -975,7 +973,7 @@ ViewModel 会发布相关通知
975
973
976
974
236
977
975
00:10:46,927 --> 00:10:49,098
978
- ViewModel 负责通知 Model 的改变
976
+ 视图模型负责通知模型的改变
979
977
980
978
237
981
979
00:10:49,098 --> 00:10:50,920
@@ -987,29 +985,28 @@ ViewModel 负责通知 Model 的改变
987
985
988
986
239
989
987
00:10:53,130 --> 00:10:57,180
990
- 然后 View 们就会观察到这些改变
988
+ 然后视图们就会观察到这些改变
991
989
992
990
240
993
991
00:10:57,180 --> 00:10:59,550
994
- 之后 View 就会从 ViewModel 那里
992
+ 之后视图就会从视图模型那里
995
993
996
994
241
997
995
00:10:59,550 --> 00:11:01,260
998
996
获取相关数据并且重新绘制自己
999
997
1000
998
242
1001
999
00:11:01,260 --> 00:11:02,829
1002
- 而这就是 View 在做的事情
1000
+ 而这就是视图在做的事情
1003
1001
1004
1002
243
1005
1003
00:11:02,829 --> 00:11:06,400
1006
- 根据 Model 当下的状态
1004
+ 根据模型当下的状态
1007
1005
不断更新自己
1008
1006
1009
1007
244
1010
1008
00:11:06,400 --> 00:11:09,790
1011
- 当然这中间少不了 ViewModel
1012
- 对数据的预处理
1009
+ 当然这中间少不了视图模型这个解释者
1013
1010
1014
1011
245
1015
1012
00:11:09,790 --> 00:11:13,780
0 commit comments