js新版語法 可選鏈操作符( ?. ) 不好使 babel 6 升級 babel 7


可選鏈操作符?. )允許讀取位於連接對象鏈深處的屬性的值,而不必明確驗證鏈中的每個引用是否有效。?. 操作符的功能類似於 . 鏈式操作符,不同之處在於,在引用為空(nullish ) (null 或者 undefined) 的情況下不會引起錯誤,該表達式短路返回值是 undefined。與函數調用一起使用時,如果給定的函數不存在,則返回 undefined

 

現象:babel編譯失敗

 

原因分析: babel版本(6.x)過低

 

解決方法: 升級babel版本至最新(7.x)

## 步驟一

// 方法一
npx babel-upgrade --write

// 方法二
npm install babel-upgrade -g
babel-upgrade --write

 

## 步驟二

  刪除node_modules文件夾

## 步驟三

  npm i 

 ## 步驟四

安裝其他babel依賴

 

## 其他問題

問題零. npm i babel-plugin-transform-decorators-legacy -D // 包名不能帶引號

問題一. 修飾器及其他編譯依賴變化 

   .babelrc 變化:

   

 

    package.json 變化:  

      

問題二:

 

 

 解決: npm i @babel/core

 

問題三:

 

 

原因:package.json 依賴包中既有 babel 7.0 版本,又有 babel 6.0 版本 

解決:步驟1. 升級babel相關組件

 

 

 步驟2. 參照問題一更改.babelrc

 

 

修飾器變化參考博文


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM