aurelia - 如何安装 polyfill aurelia
问题描述
我正在使用 aurelia-validation 插件,并且在出现错误时我想使用他们的 BootstrapFormRenderer:https ://aurelia.io/docs/plugins/validation#custom-renderers
我真的需要让它在 IE 11 上运行,正如他们所说,我需要 polyfill 才能让它运行。
如何安装 polyfill 并在 aurelia 中使用它以使其与 IE 11 一起使用?这是 polyfill 的链接:https ://github.com/jonathantneal/closest
解决方案
根据您的评论,我可以使用 Aurelia CLI 和 RequireJS 作为您的模块加载器/捆绑器来回答您的问题。
您需要做的第一件事是使用 NPM 安装 polyfill。
npm install --save element-closest
完成此操作后,您需要更新aurelia.json
文件。它位于aurelia_project
文件夹中。如果您仍在使用运行时提供的相同设置au new
,那么将配置两个捆绑包,app-bundle.js
和vendor-bundle.js
。vendor-bundle
配置有一个属性,其中prepend
已经配置了一些东西。prepend 部分是您要放置 polyfill 的地方,因为模块捆绑器只会将带有 polyfill 的文件的内容复制/粘贴到捆绑文件的开头。它不会将其包装在模块或任何东西中,因此在运行时,polyfill 代码将自动执行,并在需要时添加 polyfill。我建议将 polyfill 添加为您的第一项vendor-bundle
前置部分。至少,它需要放在require.js
prepend 部分之前。您可以在下面看到一个示例:
"name": "vendor-bundle.js",
"prepend": [
"node_modules/element-closest/element-closest.js",
"node_modules/bluebird/js/browser/bluebird.core.js",
{
"path": "node_modules/aurelia-cli/lib/resources/scripts/configure-bluebird-no-long-stacktraces.js",
"env": "stage & prod"
},
{
"path": "node_modules/aurelia-cli/lib/resources/scripts/configure-bluebird.js",
"env": "dev"
},
"node_modules/requirejs/require.js"
],
完成此操作并运行au build
orau run
之后,这就是我的scripts/vendor-bundle.js
文件开头的样子:
原答案如下:
你问这个问题已经一个星期了,还没有答案。原因是你的问题非常模糊。
答案取决于您在构建应用程序时使用的模块加载器/捆绑器。您在使用 Aurelia CLI 吗?如果是这样,您使用的是 RequireJS 还是 Webpack?
请注意,这并不是一个真正的 Aurelia 问题,而是关于您正在使用的任何捆绑器的问题。另外,请注意,作为最后的手段,可以使用脚本标签简单地加载 polyfill。
推荐阅读
- azure - 将本地数据库更改应用到 Azure SQL 数据库
- sql-server - 获取特定列sql server的分组和聚合最小值的id
- go - 多个goroutine读取pcap文件不能提高性能?
- android - 如何通过Android意图发送opencv Mat列表
- docker - 在 Fedora 32 上使用 AWS SAM 命令在本地运行 lambda 函数时出现问题。Docker 问题
- angular - Angular 8微调器或加载器使用不相关的组件
- jmeter - HTTP URL 重写修饰符
- c# - 使用 Parallel.Invoke 运行两个任务并添加超时以防一个任务需要更长的时间
- javascript - 如何在我想基于它创建的自定义库中使用传单中提供的 distanceTo 方法?
- java - 无法滚动到appium android中回收器视图的底部