0

我有一个我无法解决的奇怪问题。问题是关于 javascript 文件加载。如果有帮助,我正在使用 CodeIgniter 2.1.x。

有一个配置文件位于/app/config/template.php我在数组中加载 javascript 的位置:

$config['head_meta']        = array(
    'charset'       => 'UTF-8',
    'description'   => '',
    'keywords'      => '',
    'stylesheets'   => array(
        'template.css'
    ),
    'scripts'       => array(
        'plugins/jquery-2.0.3.min.js',
        'plugins/bootstrap.min.js'
    ),
    'end_scripts'   => array(
        'template.js'
    )
);

一个主模板视图文件app/views/templates/default.php

...
    <head>
        <?php foreach($this->config->item('stylesheets', 'head_meta') as $stylesheet):?>
            <link rel="stylesheet" href="<?php echo base_url();?>assets/css/<?php echo $stylesheet;?>" type="text/css" />
        <?php endforeach;?>

        <?php foreach($this->config->item('scripts', 'head_meta') as $scripts):?>
            <script src="<?php echo base_url();?>assets/js/<?php echo $scripts;?>" type="text/javascript"></script>
        <?php endforeach;?>
    </head>
    <body id="csspage-<?php echo $this->config->item('page_slug');?>">
        ...
        <?php foreach($this->config->item('end_scripts', 'head_meta') as $end_scripts):?>
            <script src="<?php echo base_url();?>assets/js/<?php echo $end_scripts;?>" type="text/javascript"></script>
        <?php endforeach;?>
    </body>
...

我在 Webdeveloper 的控制台(Chrome/Firefox)中总是遇到的错误是:

GET http://localhost/testweb/web/assets/js/plugins/jquery-2.0.3.min.map 500 (Internal Server Error) 

可以看到有一个文件后缀.map而不是.js. 为什么会发生这种情况是我的主要问题。

有人可以告诉我我在这里做错了什么吗?

4

1 回答 1

2

仅当您尝试使用开发人员控制台时才会出现此问题。Source Map 是当今浏览器中添加的新功能,以简化缩小代码的调试过程。

你有一个缩小的代码,如果你在正确的位置有地图文件,那么控制台在调试时会加载原始源代码而不是缩小的代码。所以只有在调试时才会出现问题,而不是在您正常查看网站时出现。

您可以在此链接中找到更多答案

http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/

也有一个SO帖子

jQuery 的 jquery-1.10.2.min.map 正在触发 404(未找到)

于 2013-10-05T16:44:26.137 回答