微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 为什么requirejs试图将’.js’附加到.j插件加载的.jst模板文件?

我对模板文件使用.jst扩展名,并使用requirejs文本加载它们!插入.例如.,
define([
  'jquery','backbone','underscore','text!templates/MyView.jst'
],function($,Backbone,_,templateText) {
  return Backbone.View.extend({
    template: _.template(templateText),initialize: function() {

    },render: function() {
    }
  });
});

当我在本地测试时,这会起作用.但是,当我在将静态文件部署到AWS(应用程序的动态部分在Heroku上运行)后尝试执行此操作时,它无法加载.jst文件并且似乎试图将.js附加到他们的网址.

供参考,这是我的requirejs配置(来自main.js)

requirejs.config({
  paths: {
    //directories
    plugins: "lib/plugins",//libs
    jquery: "lib/jquery/1.7.1/jquery",underscore: "lib/underscore/1.3.3/underscore",backbone: "lib/backbone/0.9.2/backbone",moment: "lib/moment",// date lib

    //require plugins
    text: "lib/require/plugins/text",domready: "lib/require/plugins/domready"
  },shim: {  //specify all non-AMD javascript files here.
    backbone: {
        deps: ['underscore','jquery'],exports: 'Backbone'
    },underscore: {
        exports: '_'
    },moment: {
        exports: 'moment'
    },'plugins/jquery.colorBox': ['jquery'],'util/jquery.dropTree':['jquery'],'util/common':['jquery']
  }
});

解决方法

我刚刚更新了text.js自述文件,其中包含解释此问题的信息.它基本上是跨域使用文本资源的一种方式,但它需要构建.有一种方法可以覆盖.详细信息:

https://github.com/requirejs/text#xhr-restrictions

原文地址:https://www.jb51.cc/js/150442.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐