{"id":149509,"date":"2020-08-27T06:54:10","date_gmt":"2020-08-26T22:54:10","guid":{"rendered":"http:\/\/4563.org\/?p=149509"},"modified":"2020-08-27T06:54:10","modified_gmt":"2020-08-26T22:54:10","slug":"%e5%85%b3%e4%ba%8e-swiftui-%e9%87%8c%e9%9d%a2%e4%bd%bf%e7%94%a8-coredata","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=149509","title":{"rendered":"\u5173\u4e8e SwiftUI \u91cc\u9762\u4f7f\u7528 CoreData"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  \u5173\u4e8e SwiftUI \u91cc\u9762\u4f7f\u7528 CoreData               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ufo22940268 <\/span>  <span><i><\/i> 8<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\"> <\/p>\n<p>CoreData \u91cc\u9762\u7684 model \u90fd\u662f class\uff0c\u90a3\u4e48\u5f53\u8fd9\u4e9b model \u548c SwiftUI \u4e00\u8d77\u4f7f\u7528\u7684\u65f6\u5019\uff0c\u6bcf\u6b21 property \u66f4\u6539\u7684\u65f6\u5019\u754c\u9762\u5c31\u4e0d\u4f1a\u81ea\u52a8\u5237\u65b0\u4e86\uff0c\u9700\u8981\u624b\u52a8\u8c03\u7528<code>objectWillChange<\/code>\u6765\u624b\u52a8\u5237\u65b0\uff0c\u6bd4\u5982<\/p>\n<pre><code>                self.api.watchValue = \"newvalue\"                 self.api.objectWillChange.send() <\/code><\/pre>\n<p>\u6709\u4ec0\u4e48\u597d\u7684\u89e3\u51b3\u65b9\u6848\u5417\uff1f<\/p>\n<\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>2<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"3137053\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : ufo22940268 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u53d1\u73b0 NSManagedObject \u662f conforms to ObservableObject. \u800c\u4e14\u5c45\u7136\u7528 ObservedObject \u8fdb\u884c\u58f0\u660e\u4e4b\u540e\u80fd\u6b63\u5e38\u5237\u65b0 view\uff0c\u867d\u7136 property \u6ca1\u6709\u7528 @Published \u8fdb\u884c\u4fee\u9970\uff0c\u4e5f\u80fd\u6b63\u5e38 refresh<\/p>\n<p>&#8220;`<br \/>struct ContentView: View {<br \/> @ObservedObject var entity: MyEntity<\/p>\n<p> var body: some View {<br \/> NavigationView {<br \/> VStack {<br \/> Text(&#8220;asdfasdf (entity.name!)&#8221;)<br \/> Button(&#8220;btn&#8221;) {<br \/> self.entity.name = &#8220;kkkkkkkk&#8221;<br \/> }<\/p>\n<p> NavigationLink(destination: ContentView(entity: entity)) {<br \/> Text(&#8220;jump&#8221;)<br \/> }<br \/> }<br \/> }<br \/> }<br \/>}<br \/>&#8220;`                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"3137054\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : ufo22940268 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             https:\/\/gist.github.com\/ufo22940268\/220cd201bff4b7e998d440d101cca3f4 <button onclick=\"lazyGist(this)\">\u00a0\u663e\u793a Gist \u4ee3\u7801\u00a0<\/button> <\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>\u5173\u4e8e SwiftUI \u91cc\u9762\u4f7f\u7528 C&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/149509"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=149509"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/149509\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=149509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=149509"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=149509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}