我使用的是文本的文本require.js插件! syntaxt渲染XHR响应为HTML格式。
text : 'libs/require/text' ...
在我的意见我让他们定义为
define([
'text!templates/categories.html'
, 'models/Categories'
, 'views/CategoryView'
], ...
一切正常,因为它应该在本地。
然而,当我推此代码到服务器它开始加载* html的作为<script></script>
元素。
更进一步,它附加一个.js扩展到.html文件的名称为好。
有什么想法吗? 正在加载的资产是CORS。
通过强制文字固定的问题! 插件配置为执行送花儿给人CORS。
要做到这一点,我添加了以下内容:
require.config({
text: {
useXhr: function (u,p,h,p) {
return true;
}
}, ...
我猜它是与CORS的问题是正确的。 但直到我把范围缩小到文本插件做我看到它试图加载资产当地。
我还可以通过执行以下操作都rememdied这个问题。
define([
'text!http://location.com/to/external/domain/aka/cors/templates/categories.html'
, 'models/Categories'
, 'views/CategoryView'
], ...
在这里我明确地告诉需要和文本插件将这些文件从远方来加载。
埃里克