Error: Could not read config from meta tag in EmberCLI

Error: Could not read config from meta tag in EmberCLI

我的 EmberCLI 应用程序出现以下错误:无法从名称为 "my-app-name/config/environment"

的元标记读取配置

我读到它与在 app/index 中具有正确的车把内容有关。html 但我拥有所有这些:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>My app name</title>
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    {{content-for "head"}}
    <link rel="stylesheet" href="assets/vendor.css">
    <link rel="stylesheet" href="assets/my-app-name.css">

    {{content-for "head-footer"}}
  </head>
  <body>
    {{content-for "body"}}

    <script src="assets/vendor.js"></script>
    <script src="assets/my-app-name.js"></script>

    {{content-for "body-footer"}}
  </body>
</html>

我的 config/environment.js 文件是:

/* jshint node: true */

module.exports = function(environment) {
  var ENV = {
    modulePrefix: 'my-app-name',
    environment: environment,
    contentSecurityPolicy: { 'connect-src': "'self' https://auth.firebase.com wss://*.firebaseio.com" },
    firebase: 'https://my-app-name.firebaseio.com/',
    baseURL: '/',
    locationType: 'auto',
    EmberENV: {
      FEATURES: {
        // Here you can enable experimental features on an ember canary build
        // e.g. 'with-controller': true
      }
    },

    APP: {
      // Here you can pass flags/options to your application instance
      // when it is created
    }
  };

  if (environment === 'development') {
    // ENV.APP.LOG_RESOLVER = true;
    // ENV.APP.LOG_ACTIVE_GENERATION = true;
    // ENV.APP.LOG_TRANSITIONS = true;
    // ENV.APP.LOG_TRANSITIONS_INTERNAL = true;
    // ENV.APP.LOG_VIEW_LOOKUPS = true;
  }

  if (environment === 'test') {
    // Testem prefers this...
    ENV.baseURL = '/';
    ENV.locationType = 'none';

    // keep test console output quieter
    ENV.APP.LOG_ACTIVE_GENERATION = false;
    ENV.APP.LOG_VIEW_LOOKUPS = false;

    ENV.APP.rootElement = '#ember-testing';
  }

  if (environment === 'production') {
  }

  return ENV;
};

我是否缺少元标记? 这也是我的浏览器仅在我通过 firebase 部署应用程序时显示的原因吗: {{content-for "head"}} {{content-for "head-footer"}} {{content-for "body"}} {{content-for "body-footer"}}

谢谢!

Ember 默认情况下将配置数据存储在元标记中。在我的应用程序中,我们选择不存储在元标记中,我想是因为需要支持 IE8。

您可以在 ember-cli-build.jsbrocfile.js 中添加以下行快速修复此问题:

module.exports = function(defaults) {
  var app = new EmberApp({
    //...
  });
  app.options.storeConfigInMeta = false;
});

您可以在这里阅读更多内容: https://github.com/ember-cli/ember-cli/pull/2298