亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

React:"don't fuck it up like Google did

Cristalven / 870人閱讀

摘要:核心開發(fā)人員大神在開了個,用來征詢社區(qū)對的建議。而且的工程師并沒有因此止步,他們在文檔中又告訴開發(fā)者,不僅僅要把寫到中,也應(yīng)該寫到中。無論怎么使用自定義語法,也不應(yīng)該影響這種好處,即使最終實(shí)現(xiàn)看起來有一些怪異。

React 核心開發(fā)人員 sebmarkbage 大神在 GitHub 開了個 issues,用來征詢社區(qū)對 JSX 2.0 的建議。

到底增加(改動)了什么呢?

#4 - 不對屬性和文本中的 HTML 轉(zhuǎn)義標(biāo)識進(jìn)行轉(zhuǎn)義

#21 - 屬性支持表達(dá)式

#23 - 傳參時使用對象簡寫表示

#25, #51, #64 - 屬性是單一符號或有小括號時,大括號可以省略

而且還包括了:

#39 - 隱式 do 表達(dá)式

#35 - Drop implicit text content and curlies as children.

#66 - 自定義屬性命名空間

用過 React 的開發(fā)者都知道,React 的理念就是 All In Javascript,是徹徹底底的 javascript 中心論。

之前我們都是直接把 javascript 寫在 HTML里面,后來又覺得這樣不利于維護(hù),也不符合編程領(lǐng)域中“低耦合”的理念,重新梳理前端:HTML 是數(shù)據(jù),CSS 是表現(xiàn),javascript 是行為。因此我們都是把 javascript 寫在多帶帶的文件,然后在 HTML 中引用。

但是 facebook 的工程師不僅不讓我們在 HTML 中寫 javascript,反而讓我們在 javascript 總寫 HTML。而且 facebook 的工程師并沒有因此止步,他們在 React 文檔中又告訴開發(fā)者,不僅僅要把 html 寫到 javascript 中,css 也應(yīng)該寫到 javascript 中。

我個人比較喜歡 all in javascript。至于原因以后再寫文章討論,這個不是今天的重點(diǎn)。

下面進(jìn)入今天的話題:

JSX 里面不能寫條件語句,只能用 JS 的三目運(yùn)算符,因?yàn)橛腥耍ˊmohsen1)建議,為 JSX 增加類似 ng-if 的功能,或者直接使用Angular 2 的 *if 也行:

Something like Angular ng-if would be nice to have in JSX. Making rendering of an element conditional is not easy in JSX. Maybe adopt Angular 2 *if

截至我寫此文時,這個建議收到了 32 個贊同 和 324 個反對。(我也點(diǎn)了反對)

而對于此問題,@lacker 也提到了另一種解決方案,增加 if 標(biāo)簽,例如:


  
This part only gets shown if myCondition is true

這種提議也不樂觀,28 贊同,296 反對。(我也點(diǎn)了反對)

隨后,@kevinsimper 回答了他們的問題,解決問題的方式不是 JSX 的標(biāo)簽,而是使用 javascript 的短路邏輯運(yùn)算符,再一次體現(xiàn)了 React 的 JS 中心論:

{ somethingTrue &&
  
Will only show if somethingTrue is true
}

@bjrmatos 的回復(fù)博得了眾人的喝彩:

@mohsen1 "It"s just JavaScript, not a template language" -> no need to replicate JS functionalities with custom syntax. That is the main benefit of JSX IMO, seriously is so easy to do this with js even if it looks "weird" (for me it is not weird, it is just the syntax of the language)

簡單翻譯過來就是:JSX 只是 javascript 語法的擴(kuò)展,而不是一種模板語言。無論怎么使用JSX 自定義語法,也不應(yīng)該影響這種好處,即使最終實(shí)現(xiàn)看起來有一些怪異。(原文中提到的 IMO 是不是就是 In My Opinion 的意思?)

之后的討論依然激烈并精彩,終于 @nkkollaw 回復(fù)到:

Don"t fuck it up like Google did with Angular 2, keep the thing compatible with older versions...

不要他媽的像 Google 升級 Angular 2 一樣啊,能不能保持舊版本的兼容啊

@mstijak 在評論中又提出另一個屬性綁定寫法:

我的天哪!,好不容易 JSX 不像 Angular 了,突然又變成了 vue。

后面的討論漸漸趨于平和,此時 @xpagesbeast 說到

JavaServer Faces (JSF) Expression language has stood the test of time, JSX is a very similar new kid on the block

我去!!你們討論 Angular,討論 Vue,討論 jQuery 也就算了,這個 JSF 是什么鬼?!

原文太精彩了,感興趣的可以去 github 上圍觀 JSX 2.0 · Issue #65 · facebook/jsx

歡迎關(guān)注我的公眾號,關(guān)注前端文章:

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/86650.html

相關(guān)文章

  • 為64位Windows7的Python3安裝MySQLdb

    摘要:為位的安裝原文在此基督尼瑪個耶穌這一切始于一個簡單的想法我想裝然后寫個網(wǎng)站并用這個機(jī)會多學(xué)點(diǎn)和的知識我理所當(dāng)然的選當(dāng)數(shù)據(jù)庫因?yàn)樵谖壹依锏哪桥_電腦上裝著之前的一個項(xiàng)目里用到的服務(wù)我從沒想到因?yàn)檫x擇讓我接下來的幾個夜晚都因?yàn)樘幚淼膯栴}而過的 Install 64-bit MySQLdb for Python 3 on Windows 7 為64位Windows7的Pyhton3安裝MySQ...

    Corwien 評論0 收藏0
  • 【譯】介紹JSX

    摘要:介紹我們來看一下下面的變量聲明這是有意思的標(biāo)記語法既不是字符串又不是。也是一個表達(dá)式編譯后表達(dá)式成為常規(guī)的對象。防止注入攻擊中直接嵌套用戶在表單表單中輸入的值是安全的。這有助于防止攻擊跨站腳本。讀取這些對象并使用它們構(gòu)造并保持更新。 下面是react官方文檔的個人翻譯,如有翻譯錯誤,請多多指出原文地址:https://facebook.github.io/re...特別感謝Hevaen...

    ymyang 評論0 收藏0
  • 《JavaScript Web應(yīng)用開發(fā)》作者Nicolas:恰巧,愛好變職業(yè)(圖靈訪談)

    摘要:本文僅用于學(xué)習(xí)和交流目的,不得用于商業(yè)目的。今年,我們依然會組織。隨著語言的發(fā)展,這種情況將不再適用。本系列主要討論如何獲得這些高度模塊化的應(yīng)用程序。這一系列內(nèi)的后續(xù)圖書會討論測試及部署等內(nèi)容。更多精彩,加入圖靈訪談微信 本文僅用于學(xué)習(xí)和交流目的,不得用于商業(yè)目的。非商業(yè)轉(zhuǎn)載請注明作譯者、出處,并保留本文的原始鏈接:http://www.ituring.com.cn/art... 訪談...

    wawor4827 評論0 收藏0
  • Web和Android中的Reactive

    摘要:中的常見寫法先看下這段代碼。聲明式編程,就是告訴機(jī)器你想要的是什么,讓機(jī)器想出如何去做。最獨(dú)特的特性之一,是其非侵入性的響應(yīng)式系統(tǒng)。的縮寫將遍歷此對象所有的屬性。這一過程被稱為依賴收集。組件的顯示,數(shù)據(jù)的體現(xiàn)大部分都是由承載,傳遞。 目錄 緣起 Android開發(fā)中的常見寫法 JQuery中的常見寫法 命令式編程 聲明式編程 React中的常見寫法 Vue的常見寫法 你肯定熟悉響應(yīng)...

    liangzai_cool 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<