Wir benutzen Cookies, um die Nutzerfreundlichkeit der Website zu verbessern. Durch deinen Besuch stimmst du dem Datenschutz zu.
Alles klar!
BASIC thinking Logo Dark Mode BASIC thinking Logo Dark Mode
  • TECH
    • Apple
    • Android
    • ChatGPT
    • Künstliche Intelligenz
    • Meta
    • Microsoft
    • Quantencomputer
    • Smart Home
    • Software
  • GREEN
    • Elektromobilität
    • Energiewende
    • Erneuerbare Energie
    • Forschung
    • Klima
    • Solarenergie
    • Wasserstoff
    • Windkraft
  • SOCIAL
    • Facebook
    • Instagram
    • TikTok
    • WhatsApp
    • X (Twitter)
  • MONEY
    • Aktien
    • Arbeit
    • Die Höhle der Löwen
    • Finanzen
    • Start-ups
    • Unternehmen
    • Marketing
    • Verbraucherschutz
Newsletter
Font ResizerAa
BASIC thinkingBASIC thinking
Suche
  • TECH
  • GREEN
  • SOCIAL
  • MONEY
  • ENTERTAIN
  • NEWSLETTER
Folge uns:
© 2003 - 2025 BASIC thinking GmbH
TECH

BASIC App [80%]: Heute im Fokus: Routing mit Ionic sowie die Beitragsdetailseite

Dennis Hüggenberg
Aktualisiert: 30. Dezember 2016
von Dennis Hüggenberg
Teilen

Du betreibst einen eigenen Blog mit WordPress, hast Erfahrung mit HTML5, CSS und JavaScript und wolltest eigentlich schon immer eine eigene App für deinen Blog entwickeln? Dann ist diese Kolumne genau das Richtige für dich. Heute beschäftigen wir uns mit dem Routing in Ionic sowie mit der Beitragsdetailseite. Mit der Entwicklung der BASIC App stehen wir bei 80 Prozent. // von Dennis Hüggenberg

In der letzten Woche haben wir den Helden ng-repeat kennen gelernt. Diese Direktive schafft es mit nur wenigen Code-Zeilen eine Collection aus JavaScript-Objekten mühelos darzustellen. Heute kümmern wir uns darum, wie wir von der erstellten Blog-Post-Übersichtsseite in einen Beitrag navigieren. Ebenfalls wollen wir bereits erste Teile eines einzelnen Beitrages anzeigen.

Das richtige Routing definieren

Damit die Navigation von der Übersichtsseite auf eine Detailseite gelingt muss dafür das sogenannte Routing in Ionic implementiert werden. Ein Blick auf die Projektstruktur verrät, wo wir hin greifen müssen um das entsprechende Routing zu implementieren.

UPDATE Newsletter BASIC thinking

Du willst nicht abgehängt werden, wenn es um KI, Green Tech und die Tech-Themen von Morgen geht? Über 10.000 Vordenker bekommen jeden Tag die wichtigsten News direkt in die Inbox und sichern sich ihren Vorsprung.

Nur für kurze Zeit: Anmelden und mit etwas Glück AirPods 4 gewinnen!

Mit deiner Anmeldung bestätigst du unsere Datenschutzerklärung. Beim Gewinnspiel gelten die AGB.

basic_app_routing_ionic_00

(Danke an der richtigen Stelle: Vielen Dank an Leser Mumenthaler für den Hinweis bezüglich der korrekten Einbindung von externen Bibliotheken. Ich habe das Verzeichnis upgedatet.)

Das Routing wird in der routes.js implementiert. Wie das genau funktioniert, werden wir uns noch im Laufe dieses Beitrages ansehen. Weiterhin wichtig für das Routing sind unsere beiden Template-Dateien posts.html sowie post.html.

Um richtig von der Startseite auf die Beitragsdetailseite zu navigieren, bedarf es in diesem Fall zweier Zustände. Unsere Zustände werden immer durch einen Namen, einen URL-Parameter, eine Template-URL und durch einen zuständigen Controller ausgezeichnet. Der URL-Parameter wird später an die Ursprungs-URL dran gehängt. Mit der Template-URL kann die Vorlage definiert werden, welche bei dem jeweiligen Zustand zum Tragen kommen soll.  Letztendlich wird mit  $urlRouterProvider.otherwise(‚/posts‘); noch ein Fallback-Zustand definiert der zum Einsatz kommt, wenn keiner definierten Zustände auf die aktuelle Situation zutrifft.

basic_app_routing_ionic_01

In unserem Template posts.html übergben wir nun die Ziel-URL enstprechend unserem definierten Zustand. Arbeitet man aktuell lokal und verwendet den localhost als Server und es wird beispielhaft auf den Post mit der ID 123456 zugegriffen, dann würde folgende URL im Browser stehen: http://localhost:8100/#/post/123456

basic_app_routing_ionic_02

Die Beitragsdetailseite

Aktuell funktioniert unser oben skizzierter Code noch nicht. Wir haben explizit angegeben, dass wir als URL-Parameter die ID des jeweiligen Posts übergeben wollen. Diese müssen wir erst noch ermitteln. Dazu habe ich eine variable postList definiert, in welche alle per Schnittstelle geladenen Blogbeiträge gespeichert werden. Weiterhin habe ich eine Funktion getPost geschrieben, welche eine postId entgegen nimmt und diese mit allen Beiträgen aus der Variablen postList vergleicht und als Ergebnis den Blogbeitrag zurückliefert, welcher die gleiche ID aufweist, wie die, die übergeben wurde.

basic_app_routing_ionic_03

Verwendung findet die Methode im oben bereits erwähnten Controller postCtrl:

basic_app_routing_ionic_04

Mit diesen Anpassungen können wir in unserem Template post.html auf die Daten des ausgewählten Beitragen zugreifen. Die letztendliche Implementierung in der Template-Datei entspricht der auf der Startseite.

Wie geht es weiter?

Von der langen Liste der offenen Punkte können wir mit diesem Update die Beitragsdetailseite streichen:

  • Pull to Refresh
  • Infinity-Scrolling
  • Einbindung eines Frameworks für die Aufbereitung von Responsive-Images
  • Beitragsdetailseite
  • Navigation durch die Beiträge mit Wischen nach rechts bzw. links
  • Darstellung der Kommentare sowie der Likes
  • Push-Notifications
  • Design-Optimierungen
  • Neu: Content als korrekten HTML-Inhalt darstellen

Den aktuellen Stand des Prototyps kannst du unter basicapp.de ausprobieren, für die BETA-Version kannst du dich hier anmelden.

Für die kommende Woche werde ich mir wieder spannende Themen aus der obigen Liste heraussuchen und diese umsetzen und dir das Ergebnis dokumentiert zur Verfügung stellen. Bis dahin:Genieße die Adventszeit, hinterlasse einen Kommentar oder diskutiere mit mir auf Twitter (@hueggenberg).

BASIC thinking WhatsApp Kanal
STELLENANZEIGEN
Digital Officer (m/w/d)
Rolex Deutschland GmbH in Köln
Praktikum Social Media (m/w/d)
Würth Deutschland in Künzelsau
Praktikum Unternehmenskommunikation – S...
Würth Deutschland in Künzelsau
Praktikum Suchmaschinenmarketing – SEO ...
Würth Deutschland in Künzelsau
Content Producer (m/w/d)
BAUHAUS in Mannheim
Werkstudent Online Marketing
ALL IN GROUP GmbH in München
Social Media Manager (w/m/d) (befristete Elte...
Yello Strom GmbH in Köln
Mitarbeiter Datenmanagement & Marketing (...
Adolf Schuch GmbH in Worms
THEMEN:Apps
Teile diesen Artikel
Facebook Flipboard Whatsapp Whatsapp LinkedIn Threads Bluesky Email
vonDennis Hüggenberg
Folgen:
Dennis Hüggenberg ist Projektleiter und Hobby-Entwickler. Kleine, raffinierte, mit schicken Oberflächen versehenen Applikationen faszinieren ihn. Freunde & Familie bilden das Zentrum seines Offline-Daseins.
WhatsApp Kanal BASIC thinking Tech-Deals Sidebar
EMPFEHLUNG
Strom-Wechselservice Wechselpilot-2
Strom-Wechselservice: Was bringt dir der Service wirklich?
Anzeige MONEY
Testimonial LO

»UPDATE liefert genau das, was einen perfekten Newsletter ausmacht: Kompakte, aktuelle News, spannende Insights, relevante Trends aus Technologie & Wirtschaft. Prägnant, verständlich und immer einen Schritt voraus!«

– Lisa Osada, +110.000 Follower auf Instagram

Mit deiner Anmeldung bestätigst du unsere Datenschutzerklärung

LESEEMPFEHLUNGEN

MXene Wundermaterial
GREENTECH

MXene: Wundermaterial soll neue Treibstoffe ermöglichen

akku plug-in-hybrid, ADAC, Studie, Batterie, Elektroauto, Verbrennungsmotor, Verbrenner, E-Auto, Elektromobilität
TECH

ADAC Studie: So lang hält der Akku von Plug-in-Hybriden

WELOCK Double 11 Deals
AnzeigeTECH

WELOCK Smart Lock Double 11 Deals: Bis zu 70 Euro sparen – Jetzt zuschlagen!

Psychologische Tricks Künstlicher Intelligenz
TECH

Psycho-Tricks wirken auch bei KI – das ist der Grund

CRM für Energieversorger
AnzeigeTECH

CRM für Energieversorger: Effizientes Management von Vertrieb und Fördermitteln

WhatsApp BASIC thinking TECH-DEALS
SERVICETECH

Pünktlich zum Black Friday: Die BASIC thinking TECH-DEALS auf WhatsApp

Mehr anzeigen
Folge uns:
© 2003 - 2025 BASIC thinking GmbH
  • Über uns
  • Mediadaten
  • Impressum
  • Datenschutz

Teste jetzt die AI Voice Agents
von ElevenLabs in 32 Sprachen

Elevenlabs Logo

Anzeige

Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?