Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用webpack来扩展应用程序

用webpack来扩展应用程序
EN

Stack Overflow用户
提问于 2017-10-09 20:51:20
回答 1查看 84关注 0票数 0

现有应用程序:我的应用程序正在使用require.js。我的应用程序的好处是其他人可以通过使用require.js编写第三方插件来扩展我的应用程序。

例如:(第三方插件注册) // registering a new plugin { url:'#new-page-url', js:'plugin-folder/new-page-url.js' },所以当#new-page-url在任何地方被击中时,需求js从plugin-folder/new-page-url.js中消耗js文件。

请注意,在我编译我的应用程序之后,它不包括第三方源代码,因为可以使用requriejs动态获取它们。

问题:,我一直在研究webpack,既然它编译了发行前的所有东西(bundle.js作为起始文件),.How可以像上面的例子那样动态地工作吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-10 02:15:42

请注意,在我编译我的应用程序之后,它不包括第三方源代码,因为可以使用requriejs动态获取它们。

是的,这就是问题所在。

我所处的情况类似于您的情况,我的一个大型应用程序作为AMD模块的集合,可以在运行时加载编辑模式,这些模式也是AMD模块。这些模式通常不与应用程序绑定。

AFAIK不可能只在Webpack身上复制这样一种可能性,即执行相当于RequireJS‘require([a])的操作,其中a是一个变量,其值在构建时无法知道,但在运行时确定。(对于那些可能不熟悉RequireJS的读者来说,我要补充的是,我的意思是第一个论点是[a],而不仅仅是a。RequireJS对两者进行了区分。)

Webpack需要知道它将在构建时将哪些模块捆绑在一起。(“需要知道”意味着它需要知道名称并找到模块的源代码。)因此,它不支持动态加载只有在运行时才知道的模块。如果您阅读了文档或教程,您将遇到与Webpack一起进行动态加载的讨论,但这些讨论不允许执行与require([a])情况相当的操作。Webpack可以将一个包分成块,并根据需要加载块,但是要想工作,Webpack仍然需要提前知道它所需要的整套模块。这不允许在运行时加载在构建时未知的模块。还有require.context,但是它允许您在运行时确定您想要的特定模块,而模块来自的集合则是在构建时确定的。如果在构建的时候你知道你将使用A,B,C中的一个,那就好了。但是,如果您在构建时不知道您的模块的名称,或者无法将其源提供给Webpack,那么您就不走运了。

尽管如此,应该可以使用Webpack构建应用程序的核心,并让这个核心直接调用像RequireJS或SystemJS这样的模块加载器。这就是我自己申请的方向,但我还没有跨过那座桥。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46658813

复制
相关文章
xwiki功能-应用程序&扩展
正如你从编程功能学到的,xwiki能把代码嵌入到页面。你可以将多个页面合在一起,形成一个应用程序。换言之,一个应用程序只是一组独立的页面。您可以将这些页面导出XAR格式的文件,然后可以将其导入到其他xwiki。这是一个非常好的方式来创建可重复使用的应用程序。
lovelife110
2021/01/14
6880
xwiki功能-应用程序&扩展
Webpack3来了!
After we released webpack v2, we made some promises to the community. We promised that we would deliver the features you voted for. Moreover, we promised to deliver them in a faster, more stable release cycle.
疯狂的技术宅
2019/03/28
5390
Webpack3来了!
Electron 使用 Webpack2 打包应用程序
前两天看了一下使用 Electron 开发应用程序,今天说说所怎样集成 Electron 和 Webpack2 来打包应用程序。 安装依赖库 这里准备做个小的演示程序,首先安装一些这个演示程序需要看的第三方库 $ npm install --save-dev electron $ npm install --save-dev electron-packager $ npm install --save-dev webpack $ npm install --save-dev webpack-dev-se
kongxx
2018/05/14
1.1K0
devtools怎么用_webpack devtool
前端发展到现阶段,很多时候都不会直接运行源代码,可能需要对源代码进行合并、压缩、转换等操作,真正运行的是转换后的代码
全栈程序员站长
2022/11/08
7010
devtools怎么用_webpack devtool
如何构建可扩展的应用程序
所以你有一个很棒的主意。而且你有来自大学的朋友可以帮助你开始构建你的应用程序。您也可以从早期采用者那里获得很好的反馈。所以你做任何人都会做的事。启动你的应用!
February
2018/11/20
1.4K0
用webpack配置Riot Redux工程
webpack是一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX)、coffee、样式(含less/sass)、图片Riot的tag文件等都作为模块来使用和处理。我们可以直接使用 require(XXX) 的形式来引入各模块。
IMWeb前端团队
2019/12/04
5050
用webpack配置Riot Redux工程
IMWeb前端团队
2017/12/29
5620
怎么用webpack搭建前端环境?
一、前端构建工具 grunt gulp webpack(主流,https://webpack.js.org/) Fis3(百度) 二、webpack是什么 webpack 是一个现代 JavaScript 应用程序的静态模块打包器 webpack稳定版本:v4.44 三、如何使用webpack搭建前端环境 安装node.js( v12.x) 注意:如果npm安装一些包由于网速原因,安装慢切换一下镜像源 改成淘宝镜像: npm config set registry https://registry.np
江一铭
2022/06/16
1.2K0
Electron 使用 Webpack2 打包多入口应用程序
接前面一篇文章,前一篇文章中只有一个页面,并且只有一个js文件,所以打包的时候会把那个js打包成一个bundle.js文件。但是假如我们有多个页面,且每个页面需要使用的js文件也不同,那么我们应该怎样打包呢。 安装依赖库 这里准备做个小的演示程序,首先安装一些这个演示程序需要看的第三方库 $ npm install --save-dev electron $ npm install --save-dev electron-packager $ npm install --save-dev webpack $
kongxx
2018/05/14
1.2K0
看啥双拱门,来学 webpack 3啊
---- webpack 是前端开发者一个跨不过去的编译工具。不过由于他的快速迭代,让很多同学在学一个版本的时候,下一个新版本就发布了,让人感觉非常蛋疼和无奈: “我是谁,我在干嘛,我要做什么?” 不过,如果你已经掌握 webpack 比较老的版本,对于新版本的学习而言,应该只需要 0.5 天的工作量就可以完成。因为,其基本理念都是以 JS 为中心,增加的只是其辅助特性。 webpack 到目前为止已经走过了三个大版本,每个版本之间都,增加了非常多可用的特性,但是每个版本的具体配置项都有些差异,很容易让老版
villainhr
2018/07/03
9550
使用 Prometheus 来监控你的应用程序
Prometheus 是一个开源的系统监控和警报工具,最初由 SoundCloud 开发,并于 2012 年发布为开源项目。它是一个非常强大和灵活的工具,用于监控应用程序和系统的性能,并根据预定义的规则触发警报。以下是对 Prometheus 的详细介绍:
孟斯特
2023/09/25
5360
使用 Prometheus 来监控你的应用程序
【webpack】webpack-dev-server生猛上手——让我们来搭一个webpack的微服务器吧!
[前言]:因为最近在搞****API的时候用到了webpack的externals,才发现我之前都只是用webpack做一些搭建完项目后的“收尾工作”——即打包,而没有把它纳入到项目开发的“主体过程”
啦啦啦321
2018/01/03
2.5K0
【webpack】webpack-dev-server生猛上手——让我们来搭一个webpack的微服务器吧!
如何扩展Laravel Auth来满足项目需求
之前写过两篇文章分别介绍了Laravel Auth认证系统的构成和实现细节知道了Laravel是如何应用看守器和用户提供器来进行用户认证的,但是在现实工作中大部分时候产品用户体系是早就有的这种情况下就无法使用框架自带的Auth系统,所以或多或少地我们都会需要在自带的看守器和用户提供器基础之上做一些定制化来适应项目,我会列举一个在做项目时遇到的具体案例,在这个案例中用自定义的看守器和用户提供器来扩展了Laravel的用户认证系统让它能更适用于我们自己开发的项目。
KevinYan
2019/10/13
2.7K0
快速教程:使用Cython来扩展Python/NumPy库
北京 | 深度学习与人工智能研修 12月23-24日 再设经典课程 重温深度学习 正文共2583个字,7张图,预计阅读时间:7分钟。 前言 整个快速教程直接上例子,具体对Cython的使用可以看参考文章。以下工作均在Windows 10 + Python 2.7 + NumPy 1.11.0 + Cython 0.24 版本上进行。 正文 准备工作 假设现在我们用C实现了一个可以用在数组上的cos函数,函数原型如下: // 对in_array中的前size个数求cos值,并存放在out_array对应位
企鹅号小编
2018/02/09
9910
快速教程:使用Cython来扩展Python/NumPy库
快速教程:使用Cython来扩展Python/NumPy库
前言 整个快速教程直接上例子,具体对Cython的使用可以看参考文章。以下工作均在Windows 10 + Python 2.7 + NumPy 1.11.0 + Cython 0.24 版本上进行。 正文 准备工作 假设现在我们用C实现了一个可以用在数组上的cos函数,函数原型如下: // 对in_array中的前size个数求cos值,并存放在out_array对应位置上 void cos_doubles(double * in_array, double * out_array, int size
用户1332428
2018/03/09
1.3K0
快速教程:使用Cython来扩展Python/NumPy库
用xml来编写动画
我们可以使用代码来编写所有的动画功能,这也是最常用的一种做法。不过,过去的补间动画除了使用代码编写之外也是可以使用XML编写的,因此属性动画也提供了这一功能,即通过XML来完成和代码一样的属性动画功能。 通过XML来编写动画可能会比通过代码来编写动画要慢一些,但是在重用方面将会变得非常轻松,比如某个将通用的动画编写到XML里面,我们就可以在各个界面当中轻松去重用它。 如果想要使用XML来编写动画,首先要在res目录下面新建一个animator文件夹,所有属性动画的XML文件都应该存放在这个文件夹当中。
xiangzhihong
2018/02/01
8930
用wget来备份网站
备份 wget -m -c -nH -b -o upsdn_ftp.log ftp://root%40zhiwei.li:mypass@files.zhiwei.li/
用户1191760
2019/02/27
1.3K0
用 uWSGI 来跑 asyncio
最近关注的有点杂,所以也挺久没更新博客了。这一篇主要讨论这些技术:WSGI、py3k、werkzeug、asyncio、uWSGI、nginx。
py3study
2020/01/03
1.3K0
用C的数据类型宽度扩展来解释char c=128;printf("%d",c);问题
代码编译运行环境:Windows 64bits+VS2017+Debug+Win32
恋喵大鲤鱼
2018/08/03
1K0
点击加载更多

相似问题

用Webpack扩展Bootstrap

115

用webpack 2来吞咽( webpack -流作“气2”)?

10

用打字稿和webpack扩展jQuery

10

你怎么用玩笑来形容Webpack?

16

用/webpack扩展`Error`时不能重写`toString`

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文