0

我正在运行 yo --v 1.1.2 和 angular-generator --v 0.10.0 来创建一个新应用程序,

启用 HTML5Mode有点棘手,因为我需要使用服务器重写来避免在我点击 url 时出现 404 错误浏览器。

所以我按照这个线程中的说明进行操作,显然它不适用于最新版本的 angular-generator。它在开发环境中运行良好,但不适用于生产 dist 目录,dist 中的资产文件未正确加载,我得到 404。

grunt serve #works great
grunt build #I get 404 on asset files and the baseurl is not correct.

关于如何使其工作的任何想法?

这是我使用的 grunt connect

    // The actual grunt server settings
connect: {
  options: {
    port: 9000,
    // Change this to '0.0.0.0' to access the server from outside.
    hostname: 'localhost',
    livereload: 35729,
    // Modrewrite rule, connect.static(path) for each path in target's base
    middleware: function (connect, options) {
      var optBase = (typeof options.base === 'string') ? [options.base] : options.base,
          middleware = [require('connect-modrewrite')(['!(\\..+)$ / [L]'])]
            .concat(optBase.map(function (path) { 
              if (path.indexOf('rewrite|') === -1) {
                return connect.static(path);
              } else {
                path = path.replace(/\\/g, '/').split('|');
                return  connect().use(path[1], connect.static(path[2]))
              }
            }));

      return middleware;
    }
  },
  livereload: {
    options: {
      open: true,
      base: [
        '.tmp',
        'rewrite|/bower_components|./bower_components',
        'rewrite|/app/styles|./app/styles', // for sourcemaps
        '<%= yeoman.app %>'
      ]
    }
  },
  test: {
    options: {
      port: 9001,
      base: [
        '.tmp',
        'test',
        'rewrite|/bower_components|./bower_components',
        'rewrite|/app/styles|./app/styles',
        '<%= yeoman.app %>'
      ]
    }
  },
  dist: {
    options: {
      base: '<%= yeoman.dist %>'
    }
  }
},
4

0 回答 0