gpt4 book ai didi

javascript - RequireJS - 使用 CDN 加载非脚本文件

转载 作者:行者123 更新时间:2023-11-28 06:06:41 28 4
gpt4 key购买 nike

我有一个用 AngularJS 编写的大型客户端元素,它使用 RequireJS 进行异步模块加载。

我的许多 Angular 指令都使用它们自己的 HTML 和 CSS。例如:

define(function (require) {
require('css!path/to/directive-name.css');
app.directive('directive-name', function () {
return {
restrict: 'E',
template: require('text!path/to/directive-name.html'),
controller: function ($scope) {
// code
}
};
});
});

这些天我致力于让我的应用程序与 CDN 服务一起工作。因此,对于所有 JavaScript 文件,我已将 require.config.js 文件更改为:

paths: {
app: [
'//cdn.domain.net/path/to/main',
'main'
],
}

但是在我的应用程序的启动页面上加载了很多指令,并且对于每个指令都有两个文件(CSS、HTML)是从我的源服务器而不是从 CDN 加载的。

我可以通过什么方式修改 require.config.js 文件,使浏览器从 CDN 服务器获取 html、css?

对于需要的每个文件是否有一个选项-浏览器将从CDN获取它并在CDN失败的情况下回退到我的源服务器虽然没有明确提到在 require.config.js 中?

最佳答案

path fallbacks .您必须为您的依赖项分配一个 ID,并定义该 ID 以首先与 CDN 进行路径映射,其次是本地。不幸的是,您必须为每个依赖项执行此操作。

另一方面,考虑使用 RequireJS 优化器将您的应用程序捆绑到一个或多个文件中,然后使用 CDN 代替这些文件。这样一来,您就不必对每个依赖项进行标识。

关于javascript - RequireJS - 使用 CDN 加载非脚本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36402941/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com