module 与 component 的区别

  看到有人在扯 module 和 component 的区别,于是我也来插一句。对于 Web 前端项目而言,它们没有任何区别!所有对它们区别的高谈阔论都是瞎逼逼!为何 npm 的组件安装目录就叫 node_modules?而 bower 组件的安装目录叫做 bower_components 呢?
  其实 npm 安装和 bower 安装是一样的,很多人就是喜欢用 npm 不喜欢用 bower,于是整个项目就全是 node_modules。很多 bower 的包在 npm 中也能找到。所以说 module 和 component 只是个名字而已,「组件」和「模块」的概念如今已经模糊地融合在一起了 —— 即使它们曾经是不同的。
  然而在开完地图炮之后我就要开始瞎逼逼了!
  其实「组件」和「模块」本身是不同的东西,我强调的只是在 Web 前端这个氛围中它们是等价的而已。以前做 VB 的时候里面也有「组件」(当时叫「部件」)和「模块」。里面的组件和模块的区别就是黑盒和白盒的区别。组件是可以单独编译成一个动态链接库引入的,而模块通常是代码模块,只是提供一个代码片段(VB 中还有类模块,专门提供一个类)。
  以上这个解释显然带有微软色彩的,还可以用更抽象的语言来描述它。所谓组件就是可以在运行时加载的东西,而模块则是直接被引入到代码中编译的东西。这就是它们最初的本质区别。
  到了 Web 前端,一切就变得暧昧起来。因为前端代码本来就只有运行时没有编译时。或者即使有编译时也是人为加上的,和项目的打包规则有关。比如用 webpack 单入口模式打包,那么所有的东西都是模块而没有组件。如果是想 jQuery 插件那样直接通过 SCRIPT 标签加载脚本来增加插件,那么就属于组件(虽然一般称为 plugin 而不是 component)。

  瞎逼逼完毕。

来源:https://www.web-tinker.com/article/21067.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 错误:找不到模块“babel-plugin-component”。 这个错误通常是由于缺少依赖或者依赖没有正确安装所导致的。你需要检查你的项目中是否安装了babel-plugin-component这个模块,并且是否正确配置了相关的依赖和插件。 如果你使用的是npm作为包管理器,可以尝试运行以下命令来安装该模块: npm install babel-plugin-component --save-dev 如果你使用的是yarn作为包管理器,可以尝试运行以下命令来安装该模块: yarn add babel-plugin-component --dev 安装完成后,你需要确保在babel配置文件中正确配置了该插件。例如,在babelrc文件中,你可以添加以下配置: { "plugins": [ ["component", { "libraryName": "element-ui", "styleLibraryName": "theme-chalk" }] ] } 这样就可以解决这个错误了。 ### 回答2: 这个错误通常在Vue项目中出现,它表明您的项目中缺少了一个名为"babel-plugin-component"的模块。这可能导致您的应用无法正常运行。为了解决这个问题,您需要按照以下步骤操作: 1.打开您的终端,并进入项目目录。 2.运行以下命令:npm install babel-plugin-component --save-dev。 3.等待安装完成后,重新运行您的应用程序,看看是否解决了问题。 以上步骤的目的是安装缺少的"babel-plugin-component"模块。通过这种方式,您可以使应用程序能够正常运行。 但是,如果问题仍然存在,您可能需要检查您的代码,看看是否有其他错误或问题。在这种情况下,您可能需要进行更深入的调试,并解决出现的任何其他问题。 ### 回答3: 错误信息:cannot find module 'babel-plugin-component',通常是由于Babel插件未正确安装或未在项目中使用所致。以下是处理此错误的一些步骤: 1. 确定插件是否已安装:首先需要检查项目中是否已安装了babel-plugin-component插件。使用以下命令可以查看当前项目中已安装的Babel插件:npm ls --depth=0。如果未找到babel-plugin-component,则需要运行以下命令进行安装:npm install babel-plugin-component --save-dev。 2. 检查是否正确配置:在项目的.babelrc配置文件中,需要添加babel-plugin-component插件作为一项插件。代码示例: ``` { "presets": [ ["@babel/preset-env", { "targets": { "browsers": ["last 2 versions", "IE >= 11"] } }] ], "plugins": ["babel-plugin-component"] } ``` 3. 确保使用了正确的版本:如果项目中使用了较新的Babel版本,而插件仅兼容较旧的Babel版本,则可能会出现无法找到模块的错误。建议使用插件的最新版本,并检查其与当前Babel版本的兼容性。 4. 清空缓存并重新安装插件:使用以下命令可以清空npm的本地缓存:npm cache clean --force。然后,运行npm install命令重新安装插件。 总而言之,无法找到模块'babel-plugin-component'通常是由于插件未正确安装或未在项目中正确配置所致,可以通过上述方法解决。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值