欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解如何在Javascript和Sass之間共享變量

 更新時間:2019年11月13日 14:30:13   作者:jason1992  
這篇文章主要介紹了詳解如何在Javascript和Sass之間共享變量,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

在環(huán)境之間共享變量是編程的圣杯。以下是在Javascript和

Sass(或CSS?。┲g共享變量的方法。

隨著大型單頁應用程序的興起,Javascript和CSS越來越交織在一起。通常在兩個值之間復制值(例如,與React的CSSTransitionGroup一起使用的動畫持續(xù)時間或將品牌顏色傳遞到圖形庫中)。但是,保持兩個具有相同值的副本不可避免地導致僅更新一個副本并最終導致令人沮喪的錯誤。幸運的是,使用webpack和CSS模塊,有更好的方法。在此博客文章中,我們將通過上述示例為共享動畫持續(xù)時間,探討如何在腳本和樣式之間共享變量CSSTransitionGroup。

第一步是安裝我們的依賴項:

npm install sass-loader node-sass webpack --save-dev

接下來,我們需要配置webpack以便使用,sass-loader以便我們可以從Javascript訪問我們的Sass代碼。

  // webpack.config.js
  module.exports = {
   module: {
    rules: [
     {
      test: /\.css$/,
      use: ['style-loader', 'css-loader', 'sass-loader']
     }
    ]
   }
  }

現(xiàn)在開始有趣的部分。我們在Sass中定義實際的變量值,并將其導出到Javascript。CSS模塊有一個名為的簡潔實用程序:export。該:export指令的工作原理基本上類似于ES6的export關鍵字。您的Sass代碼將導出一個對象,其中包含要在Javascript中使用的變量名稱及其關聯(lián)的值。這些值都導出為字符串。

  // styles/animation.scss
  $animation-length: 250;
  $animation-length-ms: $animation-length + 0ms;

  :export {
   animationMillis: $animation-length-ms;
  }

  .component-enter {
   ...

   transition: all $animation-length-ms ease-in;
  }

您會注意到,我們首先在一個變量中聲明整數(shù)值,然后在另一個變量中將0ms其添加。這樣一來,我們就只能導出,"250"而不是"250ms"在Javascript方面更容易解析(將0ms數(shù)字強制將其“類型”插入ms)。

現(xiàn)在,在Javascript中,我們只需要從樣式表中導入樣式,然后從導出的變量中解析出一個int即可!

// js/animation.js
import styles from '../styles/animation.scss'
import CSSTransitionGroup from 'react-transition-group/CSSTransitionGroup'

const millis = parseInt(styles.animationMillis)

...

<CSSTransitionGroup
 transitionName="component"
 transitionEnterTimeout={millis}
 transitionLeaveTimeout={millis}
/>

...

這種方法非常簡單,但是當您避免在Javascript和Sass之間同步更改的麻煩時,它會成倍地回報。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • JavaScript中去掉數(shù)組中的重復值的實現(xiàn)方法

    JavaScript中去掉數(shù)組中的重復值的實現(xiàn)方法

    百度面試時問的一道題目,蠻常規(guī)的,但是當時自己的回答挺差勁的。現(xiàn)在總結記錄下~
    2011-08-08
  • Javascript如何理解全國甲卷高考作文

    Javascript如何理解全國甲卷高考作文

    這篇文章主要介紹了Javascript如何理解全國甲卷高考作文,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • 終于解決了IE8不支持數(shù)組的indexOf方法

    終于解決了IE8不支持數(shù)組的indexOf方法

    今天,測試報過來一個js bug, 在IE8下有個js錯誤,但是在其它瀏覽器下(Firefox, Chrome, IE9)下面都很正常。后來調(diào)試發(fā)現(xiàn)原因是在IE8下,js數(shù)組沒有indexOf方法。
    2013-04-04
  • 解讀ES6中class關鍵字

    解讀ES6中class關鍵字

    這篇文章主要介紹了ES6中class關鍵字,class是es6引入的最重要特性之一。本文通過實例代碼給大家詳解,需要的朋友可以參考下
    2017-11-11
  • JavaScript 原型學習總結

    JavaScript 原型學習總結

    每個對像都有一個隱慝的屬性用于指向到它的父對像(構造對像的函數(shù))的原型(這里稱為父原型或隱式原型),并從中繼承它的屬性和方法
    2010-10-10
  • 微信小程序 動態(tài)修改頁面數(shù)據(jù)及參數(shù)傳遞過程詳解

    微信小程序 動態(tài)修改頁面數(shù)據(jù)及參數(shù)傳遞過程詳解

    這篇文章主要介紹了微信小程序 動態(tài)修改頁面數(shù)據(jù)及參數(shù)傳遞過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-09-09
  • 深入理解js generator數(shù)據(jù)類型

    深入理解js generator數(shù)據(jù)類型

    下面小編就為大家?guī)硪黄钊肜斫鈐s generator數(shù)據(jù)類型。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • JavaScript從數(shù)組中刪除特定數(shù)據(jù)的方法總結

    JavaScript從數(shù)組中刪除特定數(shù)據(jù)的方法總結

    js數(shù)組是js部分非常重要的知識,有時我們有這么個需求js數(shù)組刪除指定元素,下面這篇文章主要給大家介紹了關于JavaScript從數(shù)組中刪除特定數(shù)據(jù)的相關資料,需要的朋友可以參考下
    2022-08-08
  • 10個功能強大的JavaScript動畫庫分享

    10個功能強大的JavaScript動畫庫分享

    動畫,從人群中脫穎而出、吸引訪客注意力的絕佳方式,本文將給大家分享10 個功能強大的 JavaScript 動畫庫,有了這 10 個功能強大的 JavaScript 庫,創(chuàng)建動畫再簡單不過了,感興趣的同學可以參考閱讀
    2023-09-09
  • js實現(xiàn)七夕表白彈幕效果 jQuery實現(xiàn)彈幕技術

    js實現(xiàn)七夕表白彈幕效果 jQuery實現(xiàn)彈幕技術

    這篇文章主要介紹了js實現(xiàn)七夕表白彈幕效果,jQuery實現(xiàn)彈幕技術,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評論