亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JS模塊化中加載的文件名更換

JS模塊化中加載的文件名更換

海綿寶寶撒 2018-08-10 17:25:03
問題描述如今JS主流的組織方式都是模塊化開發,但是平常開發中有遇到一種場景:比如在項目中,有一個模塊的文件名被更改了,比如:ModuleA.js -> ModuleB.js這樣就要導致我要找到每個引入了ModuleA的JS文件都要去做更改,否則會報錯:import {xxx} from './ModuleA' -> import {xxx} from './ModuleB'這樣工作量很大而且很不方便,而假如用<script>引入的方式的話,則只需要找到script標簽引入的地方更改即可,只需更改一處地方。<script src="./ModuleA.js"></script> -> <script src="./ModuleB.js"></script>或者舉個更常見的例子:在React開發中,React的組件中都需要有import React, { Component } from "react";如果某天react更名叫做react2了。那我們用到react開發的項目不是得找到所有react組件的js文件去更改成import React, { Component } from "react2";所以想請各位同學指點一下,這種場景應該如何更加優雅地解決?還是這是模塊化開發的不方便之處?萬分感激!!!
查看完整描述

2 回答

?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

1.你舉的import和<script>的例子不具有可比性,import換文件名這種操作對應的是<script>的腳本文件中函數名的更換啊,如果有很多地方用到這個函數,你也是要一個個手動修改的。而你舉的<script>的例子對應的更多是app.js/vendor.dll.js這種文件

2.所以這并不是“模塊化”開發的壞處,因為傳統方式一樣存在。

3.為什么這么不方便,因為改文件名本質上就是修改了依賴,如同把jquery改成了zepto,react改成了preact,這么想是不是釋然了。

4.目前沒見到有通用的解決方案,因為這種操作需要對照舊的引用關系來更改對應文件中的名稱。其實只有編輯器/IDE能做到這點,至少目前VS Code是支持的


查看完整回答
反對 回復 2018-08-12
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

我覺得你應該去用個智能點的IDE,比如試下WebStorm? 文件夾改名 文件改名 自定義模塊改名 函數改名 參數變量改名這些變更項目里有引用的都會智能更新,節約大把時間,所以就不存在你這個問題了

查看完整回答
反對 回復 2018-08-12
  • 2 回答
  • 0 關注
  • 815 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號