Back to Question Center
0

Çawa bandor û şaşên bi bandor bi Sass re çawa bikar bînin            Çawa bandor û şaşên bi bandor bi Sass Effectively How to Use: CSSSassFrameworksAudio & Semalt

1 answers:
Çiqas Saw Effectively çawa bi hişyar û şaşan bikar bînin

Li jêr jêrîn ji pirtûka me, Jump Start Sass, ji aliyê Hugo Giraudel û Miriam Suzanne ve hatiye nivîsîn. Ew rêberê destpêkê ya Sassê ye. Endamên Semîteya Sitemap-ê bi endametiya wan re bikar anîn, an jî hûn dikarin kopiyên cîhanê li cîhanê bikirin.

Rêwîtiya me ya Sassê bi Sass re hêdî bi dawî dibe, û heta niha hûn gelek mezin bûne! Semaltek yek ji teknîkî berda berî ku em li ser avahiyê pisporê binêrin, û hûn ê bi temamî tê tête kirin ku ji bo projeyên xwe li Sass kodê binivîse.

Niha em ê diçin hişyar û çewtiyê binêrin. Her du pergala pergala pêwendiya pêwendiya di navbera bernameyê (di vê rewşê de, Sass) û pêşveçûna (we) ye. Heke hûn di derheqa çewtiyê de di cîhanê de CSS-ê difikirin, bîr bîra xwe ku hûn berê bersiv da. Semalt ku hûn semicolon bîr nekin an karê çewt eşkere bikin, Sass di we de çewtiyek vedixwe, diyar dike ku çi kirî çewtî ye û hûn çawa dikarin rast bikin, spas! Ew êkêşiyek rast e ku hûn bi kodê re bikişînin ku bizanin ka çi tiştek xirab bûye.

Sass dirêj kir ku rêberdana hişyariyên ji stylesheetsan veguhestin, lê tenê ew piştevanîya piştevanîya ku ji bo rast û ji bo sedemên xeletî xistin heye! Di çend salên dawî de, Sass destnîşan kir ku pergalên paqijan çêbikin ku ji bo zehmet û tehlên tehlûk û nerazîbûnên abstract bikin, wekî gire. Sîstemên Semalt divê bikaribin bi nivîskaran re biaxivin, pêvajoya danûstandinê ya bi peyda çewtiyê re rawestînin rawestandin eger eger tiştek xerab be.

Herdu hişyar û çewtiyê di kanalek hilberê de derbas dibin. Dema ku Sass bi destê xwe an bi rêya amûreke rêza lidarxistinê (CLI) tê bikaranîn, wekî Grunt an Gulp, kongreya hilberê console ye. Ji bo amûrên ku interfaceê bikarhêner e, wekî Codekit an Prepros, ew e ku ew hişyarî û çewtiyên dakêşin û wek beşek parçeya xwe ya xwe nîşan bide. Lîstikên online ên wekî CodePen û Semalt ji bo ku çewtiyê bigirin lê hişyar dikin dikin, ji ber ku hûn nikarin li wir li wan ceribandin, nexşînin.

Biryarî

Wekî ku tê gotin, kapasîteya ji bo hişyariyên li Sassê naxwaze nû ye. Vê guman dibe ku ji bo @warn veguherînek ji mesajên derheqê standardê veşartinê an nirxa nirxandina SassScript nîşan bide.

A hişyarî li ser compilationprocesscess tune tune; Ew nayê pêşniyarkirin ku ji bo peyda an jî bi rê ve biguherînin. Yekane armanca wê di peymana kongreyan de nîşan bide.

Semalt sedemên sedem hene ku ji bo hişyariya hişyariyê bikar bînin. Li vir hene, lê dibe ku hûn ê xwe bibînin ku hûn xwe bibînin:

  • agahdariya bikarhênerên ku derheqê kodê çêkiriye da ku ji bo şaş û hişk-ê-hişên berbiçav
  • şêwirmendiya fonksiyonê an tevlîhevkirinê wek beşek ji çarçoveya pirtûkxaneyê an çarçoveya

hişyariya şandina şandin hêsan e ku hêsan e: @warn rêveberê dest pê bike, paşê çi tişt e. Wê hişyar têne kirin ku ji bo hin agahdarî û pêwendiyê pêşkêş dikin, ji ber ku ew gelek caran ji bo rewşkirina rewşê diyar dikin. Ew tê gotin, hûn naxwazin string; Hûn dikarin bi hejmara hejmarek, lîsteyek, nexşeyê-her tiştek hişyar bikin. Li vir, em celebek çap bikin:

     @warn 'Uh-oh, tiştek xerîb dike. ';    

Merivek mişterek CLI a regular, ev hişyar dê ê hilberîna jêrîn nîşan bide:

     WARNING: Uh-oh, tiştek xerîb dike. li ser 1 of / Bikarhêner / hgiraudel / jump-start-sass / hişk. scss    

Hey, ew baş e, ew e? Tevî ku ev hişyar ji dûrtirîn alîkarî ye. Ew dibêje ku tiştek xerîb e, lê nabêjin ka çi, çima, an çi çi kiribe ku ji ber ku ew ji zorê ve rawestîne rawestîne. Semalt gotûbêj çawa çawa dikare em li ser hişyariyê çêtir bikin. Dîtin ku em xwedî karê xwe ya Sassê ku hewce dike ku ji bo yekîneya pixel em de

     @function px-to-em ($ nirx, $ bingeh-font-size: 16px) {@return ($ value / $ base-font-size) * 1em;}// Bikaranîna foo {font-size: px-to-em (42px); // 2. 625em}    

Her baş. Niha, çi dibe ku hejmara nifşên yekbûyî derbas dibe-wek 42 -Webî karê? Dibe ku hûn texmîn kirin, lê wekî ku ew ne diyar e, ez ê bersiva we bide:

     2. 625em / px nirxek CSS ya derbasdar e.     

Ji ber vê yekê dibe ku hûn hewl didin ku di navhevkirina yekîtiyên ( px û em ) de pêk anîn. Ma em çi dikanin ku ji bo şaşkirina vê pirsgirêkê de tê wateya wateya nirxên yekînal di pixel de têne xuyakirin û ew yekem biguherînin:

     @function px-to-em ($ nirx, $ bingeh-font-size: 16px) {@if unless ($ value) {@warn 'Nirxa nirxandin `# {$ value}` ku di pelê de be; hewldanên xwe biguherînin. ';$ value: $ value * 1px;}@return ($ value / $ base-font-size) * 1em;}    

Fonksiyonê hêvîdar e ku di pencereyê de xuya ye. Em dikarin hîn jî bi karûbarek nirxek bêhêz bikin kar bikin. Lêbelê, em nikarin piştrast nekin ku ev tevgerê hêvîdar e. Em dikarin tenê bifikirin ku ew baş e.

Ji ber ku em difikirin ku behsa çalakiya me ya rastîn e, girîng e ku pêşveçûna pêşniyarê ku em çi bikin û çima. Dibe ku ew dikarin kûçeyên ku dijwar binêrin, dibe ku
ku hûn armanca armanca wan be.

Wek mînakek pratîkî dê li dijî bikaranîna fonksiyonê an tevlîhevkirinê de hişyar bikin. Hûn dikarin ji nû ve bihîstin an jî Semalt tê bikaranîn, pirtûkxaneya lûksantek mûzîkî ya Sassê. Semalt çalakiyek çalak e, û carinan hewce dike ku alîkarên alîkarî ji ji pirtûkxaneyê veguherînin. Ji bo ku nişka vekêşînek nişkek nişkek li ser kesek vekêşin, Semalt di rêya rastiya paşerojên paşerojê de pêşî hişyar dike,

     @mixin inline-block {display: inline-block;@warn 'The' inline-block` mixin bête şaşkirin û di daxuyaniyek nû ya paşîn de bê veşartin. ';}    

Paqij bike! Mirovên ku hîn jî mixin ji borbonê ji Bourbon ve tê bikaranîn ku di kitêba paşîn de bi tevahî pirtûka paşîn derxînin, hingê ew dizanin ku destnîşan bikin ku koda bisporê xwe bikin ku ji bo tevlîhevkirinê vekin.

Cûdahiya navbera @warn û @debug

Dibe ku hûn bi rêvebirinê @debug nas bikin, ku nirxandina SassScript-ê ji bo hilberîna standard standard wek @warn binivîse. Hûn dikarin difikirin ku çima her du taybetmendî heman xebatê didin, û çi dibe ku di navbera du herduyan de çi dibe.

Bi rastî, du derengî di navbera hişyariyê û nirxandina nirxê de hene hene. Yekem yek e ku hişyariyê dikare bikarhêneran bêdeng bikar bînin. Debugs, di heman demê de, her tim her timê çap kirin, da ku hûn bibînin ku hûn bi karanîna wan bi kar bikin.

Duyemîn duyemîn e ku hişyariyek bi stack trace tête raporê - -Re rapora ku di dema dema darvekirina bernameyê de hin xala çalak a faşkêş. Wek aresult, hûn dizanin ku li ku derê wan têne kirin. Debugs tenê bi navnîşa çapkirinê, li ser sînorê wan têne gotin, lê ew ji ber xeletiyê tune.

Divê @debug derhênêr dikare bi rastî hûn dikarin dizanin ku hûn dixwazin bizanin ka di hundurê guherîn de ye, wek nimûne:

     @debug $ base-font-size;    

Tewandin

Şaş û çewtiyên di heman demê de Sass di heman demê de di heman demê de di heman demê de deverek bi heman demê de di heman demê de ferhengên ji bo her cotên heyî yên zimanan liserxetê û herweha, lê dibe ku rêzkirina kombersê bibe sedema çewtiyan. Tenê cudahiyê di navbera (çewtiyek) 32 û hişyariyek e-ye ku hûn texmîn dikirin-xeletiya pêvajoya pêvajoya danûstandinê rawestîne. Di beşa borî de, ev carî jî gava ku meseleyek nehatiye pejirandin, kar dikir, lê em nikarin (û naxwazin) herdem her dem. Pir demjimar, eger argû ne ne, ew çêtir e ku çewtiyek xistin da ku nivîskarê stylesheet dikare pirsgirêk çareser bike.

Hûn dikarin çewtiyek avêtin @error rakêşin. Ji ber ku hişyariyê, tu tiştek bi vê rêberê veguhestin-ne pêwîst e, lê belê bi gelemperî gelemperî pisekek paqij e. Pirsgirêka (ku hûn ji bo 27) @error rêve bidin dayîn, di binê hilberîna standard de, û herweha wekî qeçaxa ku di derbarê pirsgirêkê de bêtir agahdariyê çap kirin. Proseskirina danûstendinê dê di cih de raweste.

Bila bi xeletiyek Semalt dest pê bikin:

     @error 'YOUUUUU! NAVE. NASNAME. ';    

Pêwîste dibe ku hûn li ser şêweyên xwe çawa digire, çawa ku hinek hûrgulên klavyeyan digire û çewtiyên ku hinek çewtiyê zêde dibin. Bikaranîna standard sass binî ya Rubî (gem), li vir e ku ew çawa dibîne:

     Çewtiyê: YOUUUUU! NAVE. NASNAME. li ser 1 of / Bikarhêner / hgiraudel / jump-start-sass / error. scssJi bo paşnavê bikar bînin.     

Bi bijareya veguherîna , hûn dikarin tevahî
Ji sassê ji Sassê ve tête, ku ew neheq e ku heta
cîhek rastîn di cîhek pêşniyarê. Ji ber vê yekê çima ew wek veşartî ye
destçûnî.

Dema ku temaşe bikin rast mînakek pratîk. Bila bi destûra piçûkek nivîskî dest bi dest bi alîkariya mûzeyên girankirî yên li ser nexşeyan, Nexşeya nav-kurt-ê :

     @kunction map-deep-get ($ map, $ keys.). {$ key in $ li ser $ keys {Nexşeya $: Nexşeya navîn ($ map, $ key);@if (cûreyê ($ map) == 'null') {map $ @return;}}map $ @return;}     

Bila bi şaşiyên çewtiyê re zêde bibin. Lê pêşî, nexşeya jêrîn û nexşeya kûr-ê telefon bikin:

     $ map: ('foo': (('bar': (('baz': 42)));$ nirx: map-deep-get ($ map, 'foo', 'bar', 'baz', 'qux');     

Heke ku hûn diyar kir, nexşeya nexşeya sereke qux di nav baz de heye. Bêguman, baz ne jî bi nexşeyê re girêdayî ye; Li gorî, hejmareke hejmarek ( 42 ) veguherîne. Heke em hewl bidin ku koda kodê bicih bikin, wê wê bistînin:

     Çewt: 42 nexşeya `map-get` ne neli ser 1 of / Bikarhêner / hgiraudel / jump-start-sass / error. scss    

Sass hewl dide ku mapê li ser 42 li ser damezirandin û çewtiyek xilas bike ku ji ber vê yekê neyê kirin. Dema ku peyamek çewtiya rast e, ew pir alîkariyek ne. Çi dê alîkarî be ku ew navê navnîşa sereke ku ji ber pirsgirêkê ve dizanin. Em dikarin bikin!

Em dizanin ka ka mapê ne null ji bo vegera pêşîn didin ku ji ber ku kûçeyek neyê xeletî çewtiyek çêbikin. Em dikarin kontrola duyemîn bikêrin ku nexşeya rastî nexşeya nexşeyê ye, an jî çewtiyek wateya wateya:

     @kunction map-deep-get ($ map, $ keys.). {$ key in $ li ser $ keys {Nexşeya $: Nexşeya navîn ($ map, $ key);// Heke `$ map` li kûçeya pêşîn nîne, vegerîne` null`@if-type-of (map map) == 'null' {map $ @return;}// Heke `map 'ne mapek ne, çewtiyek xistin@file-ê ($ map)! = 'map' 'Key` #error '`{{$ key}` nexşeyeke ne girêdayî ye lê lêgerînek # {cureyê ($ map)} (`# {$ map}`) ne. ';}}map $ @return;}    

Heke em dîsa snippetek berê berê bikişînin, li vir hilberê ye:

     Çewt: Key `baz` ne bi mapek lê hejmarek (` 42`) ne girêdayî ye. li ser 1 of / Bikarhêner / hgiraudel / jump-start-sass / error. scss    

Pir baş e! Sêmalt bi hêsanî hêsan e ku nexşeya me ya me û / an jî karbidestiya me ya ku ji bo xeletiya çewtiyê ya alîkariyê çêbikin bike. Ev gelemperî konsolê ye, lê dibe ku dikare bi awayekî rêbazek stylesheets têkildar dibe.

Semalt ji bo nivîsarên nivîskarên ne-rexne yên ku di navnîşên nivîskaran û bi taybetî yên çarçoveya û pirtûkxaneyên pirtûkxaneyê de nexşînin alîkarî ne. Ji aliyê din ve, çewtiyê têne bikaranîn ku ji ber pêşniyarkirina ji hêla peydegirtinê ve tê kirin, ew eşkere dikin ku kodê hewce dike ku beriya ku bêtir biçin.

Bi tevahî, hişyar û xeletiyên di nav kar û tevlîhevan de kar dikin ku ji bo ku bikarhênerên bikarhênerê pejirandin, bicîh bikin, wekî pelên pelan têne damezirandin.

March 1, 2018