Programmering

Hva er nytt i Rails 5.1: Bedre JavaScript, for en

Ruby on Rails, det veteranrammer på serversiden, leker fint med JavaScript i en oppgradering som nylig har flyttet til en første betaversjon.

Rails 5.1 tilbyr flere forbedringer, inkludert kryptering, systemtester og administrering av JavaScript-avhengigheter fra NPM via Facebooks nye Yarn-pakkebehandling.

Ved å administrere JavaScript-avhengigheter gjennom garn, kan brukere være avhengige av biblioteker som React via NPM. Eiendeler blir gjort tilgjengelig i en rørledning, og binstub bin / garn brukes til å legge til disse avhengighetene. Utviklere som arbeider med versjon 5.1, kan også kompilere JavaScript ved hjelp av Webpack-modulpakken, via en Webpacker-perle. Men Rails 5.1 dropper jQuery som standardavhengighet. Med omskriving av rails-ujs diskret skriptadapter for å bruke vanilje JavaScript, er denne avhengigheten ikke lenger nødvendig.

Rails 5.1 har også en kryptert mulighet for administrasjon av hemmeligheter. En kryptert hemmelighetsfil settes opp ved hjelp av bin / rails hemmeligheter: oppsettsfunksjon, som genererer en hovednøkkel for å lagre utenfor depotet, mens utviklere kan begå produksjonshemmeligheter.

For systemtester inkluderer Rails 5.1 en innpakning av Capybara Ruby-biblioteket for applikasjonstesting. Den kommer forhåndskonfigurert for Chrome-nettleseren og forbedret med feil skjermbilder. Den parameteriserte mailers-funksjonen gir muligheten til å ringe mailers med tilgjengelige parametere før en handling påkalles. Rails 5.1 forenkler skjemaoppretting ved å forene to hierarkier, form_for og form_tag, med form_med. En rettet rute-funksjon muliggjør i mellomtiden deklarasjon av programmatiske ruter som kan bruke Ruby til å utføre funksjoner avhengig av parametere.

"Vi har hatt et stormfullt, kanskje til og med omstridt, forhold til JavaScript gjennom årene. Men den tiden er forbi," sa en bulletin i 5.1.0-utgivelsen forfattet av dhh, som antagelig er Rails grunnlegger David Heinemeier Hansson. JavaScript, understreker bulletinen, har "forbedret seg enormt" de siste årene med adventen av ECMAScript 6 og verktøy som Garn og Webpack.

$config[zx-auto] not found$config[zx-overlay] not found