<\/P>
Dus ik heb de laatste tijd veel gesproken over de ArcGIS API for JavaScript 4.0beta1<\/A>. Ik heb mijn liefde voor Accessors<\/A> geuit, en ik vind Promises<\/A> geweldig. Er is een heel nieuw concept van het scheiden van de kaart en de view<\/A>. Het zit boordevol goede dingen. Het is echter beta<\/EM>. Dus niet alles is 100% en sommige dingen zijn gewoon nog niet helemaal klaar.<\/P><\/P>Maar jij bent ongeduldig. Je houdt ervan om op het randje te leven. Je drinkt wijn rechtstreeks uit de fles<\/EM>. Je wilt dat sommige dingen nu werken! Een van de dingen die niet in de 4.0beta1 API zitten, is bewerken. Als je kijkt naar de documentatie voor een FeatureLayer<\/A>, heeft deze momenteel geen bewerkingsmogelijkheden. Die komen er wel, maar nog niet.<\/EM> Dat is oké. Jij bent een ontwikkelaar... je kunt dit<\/EM><\/STRONG>.<\/P><\/P>Wat is bewerken eigenlijk? Bewerken is niets meer dan een mogelijkheid van een feature service in de ArcGIS REST API<\/A>. Ik heb je eerder gezegd, leer REST te spreken <\/A>en alles valt dan op zijn plek<\/EM>. Voor dit geval gaan we ervan uit dat je alleen features aan de service wilt toevoegen. Er is een mogelijkheid specifiek daarvoor<\/A>. Er is zelfs een voorbeeld van hoe het verzoek en antwoord eruit zullen zien. Simpeler kan bijna niet.<\/P><\/P>Dus deze voorbeeldeditor is zo simpel als je kunt krijgen om features toe te voegen aan een Feature Service.<\/P>var Editor = declare(null, { constructor: function (params) { this.map = params.map; this.layer = params.layer; }, add: function (graphic) { var data = graphic.toJSON(); var map = this.map; var layer = this.layer; \/\/<\/SPAN>http:\/\/resources.arcgis.com\/en\/help\/arcgis-rest-api\/index.html#\/_Add_Features_\/_02r30000010m000000\/_<\/A> var url = this.layer.url + "\/_addFeatures"; map.remove(layer); esriRequest({ url: url, content: { features: JSON.stringify([data]), } }, { usePost: true }).then(function (response) { map.add(layer); }).otherwise(function () { map.add(layer); }); }});<\/PRE><\/P>Dat is het.<\/EM> Geef een Map en FeatureLayer en je bent klaar.<\/P><\/P>Merk op dat je op dit moment de laag van de kaart moet verwijderen en daarna weer moet toevoegen om de bewerkingen te laten zien. Beta!<\/EM><\/STRONG>Ik gebruik dit gewoon op een gedeelde service, maar esri/request<\/EM> zou authenticatie voor je moeten kunnen afhandelen als je dat nodig hebt. Houd me hier nu niet aan vast, ik heb het nog niet geprobeerd.<\/EM>Moet je ook deletes en updates ondersteunen? Kijk naar de delete<\/20>Aanvragen en update<\/20>Aanvragen. Of gebruik gewoon applyEdits<\/20>en beheer het zoals jij wilt. Onthoud... Het is allemaal gewoon REST man!<\/20>
Dus deze voorbeeldeditor is zo simpel als je kunt krijgen om features toe te voegen aan een Feature Service.<\/P>
var Editor = declare(null, { constructor: function (params) { this.map = params.map; this.layer = params.layer; }, add: function (graphic) { var data = graphic.toJSON(); var map = this.map; var layer = this.layer; \/\/<\/SPAN>
Dat is het.<\/EM> Geef een Map en FeatureLayer en je bent klaar.<\/P><\/P>Merk op dat je op dit moment de laag van de kaart moet verwijderen en daarna weer moet toevoegen om de bewerkingen te laten zien. Beta!<\/EM><\/STRONG>
Ik gebruik dit gewoon op een gedeelde service, maar esri/request<\/EM> zou authenticatie voor je moeten kunnen afhandelen als je dat nodig hebt. Houd me hier nu niet aan vast, ik heb het nog niet geprobeerd.<\/EM>
Moet je ook deletes en updates ondersteunen? Kijk naar de
Hier is een demo van deze module in actie.
Dus ga ervoor, probeer het uit. Beta is beta, maar soms moet je gewoon doen wat je moet doen.<\/20>
Dus ga door en hack erop los mijn vrienden!
Voor meer geodev tips en trucs, <A href=
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.