Export Named Functions and Variables

DEX475 - JavaScript

📄 第 143 页 🎬 视频课程

课程章节介绍

同学们好,今天我们一起来看看Lightning Web Components里一个非常实用的概念——命名导出。这个名字听起来可能有点陌生,但其实很好理解。简单说,就是在一个模块里,你可以同时导出多个函数、变量或者类,每个导出的东西都有自己的名字。 想象一下,你有一个专门做抵押贷款计算的工具模块,里面有两个功能:一个叫getTermFields,它会返回一组期限选项,每个选项都有标签和对应的值;另一个叫calculateMonthlyPayment,专门处理财务计算,帮我们算出每个月的还款额。你在文件最后可以这样写:export { getTermFields, calculateMonthlyPayment }。这一写,就相当于给这两个函数都贴上了标签,让别的模块能直接按名字来取用。 那别的组件要怎么用呢?很简单,导入的时候要用一对花括号,里面写上你需要的那个函数的确切名字,这和JavaScript里的解构很像。比如:import { getTermFields, calculateMonthlyPayment } from 'c/mortgageApi'。这样做的好处是,你完全可以只导入自己用得上的那部分,不需要把模块里所有的东西都搬过来,非常灵活。 万一你当前的组件里已经有一个同名的变量或者函数了,也不用担心。你可以用as关键字给它起个小名儿,比如写成import { calculateMonthlyPayment as calcPayment },这样就能避免冲突,读起来也更顺。 另外提醒大家一点,像这种纯粹提供计算逻辑的模块,它其实不需要HTML界面,所以就没有对应的HTML文件。在Lightning Web Components里,服务类型的模块常常就是这么干的,它就是一个干干净净的代码库。 好了,简单总结一下:命名导出让我们能从一个模块里轻松分享多个功能,导入时按名取用,还能重命名。希望这个讲解帮你理清了概念,我们下一节继续。

关键词

LWC Lightning Web Components Salesforce