javascript - Finns det en praktisk html-parser som kan användas i Nativescript
Jag har försökt Jquery, Parse5, JsDom och upptäckt att de inte kan fungera i nativescript. Jquery är beroende av Dom, och Parse5 och JsDom är beroende av Node.js som inte stöds av nativescript nu. Det jag vill ha är endast en HTML-parser, är det möjligt att importera jquery till nativescript och använda det som en HTML-parser? Om det är möjligt, hur kan jag göra det. Om inte, finns det en praktisk HTML-parser som kan användas i Nativescript (med Angular2 + TypeScript).
Detaljer om min ansökan. Jag utvecklar en mobilapp för Moodle med NativeScript. Min app kommunicerar med Moodle via Moodles REST-API, och en del av innehållet är HTML-strängar. Så jag behöver en HTML-parser för att få ut sakerna i den HTML-strängen.
Till exempel skickar jag en "mod_quiz_get_attempt_data"-förfrågan till Moodle. Och jag kommer att hämta ett JSON-svar som nedan:
{"questions": [ { "slot": 1, "type": "flervalsfråga", "page": 0, "html": "Html-sträng här. Kan vara mycket komplex. Jag kan inte posta html-sträng, stackoverflow ignorerar dem", } ] }
Vissa data jag behöver finns i "html"-delen som är en html-sträng. Eftersom Moodle är en tredje part, föredrar jag att hantera detta i min app.
@Marek Maszay, @Emil Oberg
@Emil Oberg, jag har provat cheerio. Det fungerar inte. Eftersom cheerio beror på htmlparser2 som också beror på Nodejs.
Svar #1
Eftersom du har tittat på jQuery (bland andra) skulle jag säga att Cheerio är vad du vill ha. Det är en implementation av kärn-jQuery designad för en icke-DOM-miljö (såsom i en NativeScript-app, på servern, etc).
Att parsa HTML är dock vanligtvis inte något du behöver göra i en NativeScript-app. Av nyfikenhet: Vad försöker du göra?
Svar #2
Jag stötte på ett liknande problem och använde nativescript-xml2js för att lösa det.
Den konverterar HTML-strukturen (taggar, attribut) till JSON och fungerar i Nativescript med Typescript eller vanlig js.