更改资产outputPath不会在html中更新

时间:2016-09-26 20:53:58

标签: ember.js ember-cli

我正在尝试将我的资产的outputPaths从默认assets更改为media,以便我可以更轻松地将其与我的php框架集成。

在我的ember-cli-build.js文件中,我按照定义的here对我的应用进行了以下修改:

var app = new EmberApp(defaults, {
    fingerprint : {
        replaceExtensions : [ 'html', 'php', 'css', 'js' ]
    },
    outputPaths: {
      app: {
        css: {
          'app': '/media/application-name.css'
        },
        js: '/media/application-name.js'
      },
      vendor: {
        css: '/media/vendor.css',
        js: '/media/vendor.js'
      }
    },
    'ember-power-select': {
      theme: 'bootstrap'
    }
  });

生成的application-name.cssapplication-name.jsvendor.cssvendor.js文件保存在硬盘上正确的assets目录中,{{1文件未更新以匹配。相反,它链接到相同的默认index.html文件。

为什么这不起作用的任何想法?感谢。

1 个答案:

答案 0 :(得分:1)

要使指纹识别起作用,index.html文件和config.js文件中的路径和文件名必须匹配。例如,如果您的配置文件中包含以下内容:

outputPaths: {
  app: {
    css: {
      'app': '/media/my-application.css'
    },
    js: '/media/my-application.js'
  },
  vendor: {
    css: '/media/vendor.css',
    js: '/media/vendor.js'
  }
}

您需要编辑index.html文件以匹配:

<link rel="stylesheet" href="media/my-application.css">
<script src="media/my-application.js"></script>