AngularJS html5Mode mit Grunt zu verbinden. grunt 0.4.5

Ich habe vor kurzem umgeschaltet, um grunt 0.4.5 und es verändert, wie die Verbindung funktioniert.

Ich zuvor verwendet connect-modrewrite und es funktionierte ziemlich gut (hatte einige Probleme mit urls generiert durch /:parameter).

Hier ist die alte version, arbeitete mit grunt 0.4.1 von generator-angular 0.8.0 mit der middleware Teil modded von mir zu verwenden html5mode.

connect: {
    options: {
        port: 9000,
        hostname: '*IP HERE*',
        livereload: 35729,
        middleware: function (connect, options) {
            var optBase = (typeof options.base === 'string') ? [options.base] : options.base;
            return [require('connect-modrewrite')(['!(\\..+)$ /[L]'])].concat(
                optBase.map(function(path){ return connect.static(path); })
            );
        }
    },
    livereload: {
        options: {
            open: true,
            base: [
                '.tmp',
                '<%= yeoman.app %>'
            ]
        }
    },

Hier ist die neue version von generator-Winkel-0.9.0-1

connect: {
    options: {
        port: 9000,
        hostname: '*IP HERE*',
        livereload: 35729
    },
    livereload: {
        options: {
            open: true,
            middleware: function (connect) {
                return [
                    connect.static('.tmp'),
                    connect().use(
                        '/bower_components',
                        connect.static('./bower_components')
                    ),
                    connect.static(appConfig.app)
                ];
            }
        }
    },

Wie kann ich dies ändern, um die Verwendung von mod-rewrite oder eine andere Methode zu erreichen html5mode?

Habe ich versucht mit der Methode, die hier bereitgestellt: https://gist.github.com/nnarhinen/7719157
Ich kombinierte es die folgende erstellen:

middleware: function (connect) {
    return [
        connect.static(modRewrite(['^[^\\.]*$ /index.html [L]'])),
        connect.static('.tmp'),
        connect().use(
            '/bower_components',
            connect.static('./bower_components')
        ),
        connect.static(appConfig.app)
    ];
}

Dies ermöglicht es mir zu Ansicht die normale Ansicht, aber das modRewrite-Teil scheint nicht das zu tun, was es braucht, um in eine andere Ansicht über die url.

  • Seltsam, ich bin derzeit mit grunt 0.4.5 und der middleware fein gearbeitet. Ich habe versucht eine Reihe von verschiedenen Implementierungen und diese war die einzige, die arbeitete mit einer "base" option.
InformationsquelleAutor Mark Lenser | 2014-06-18
Schreibe einen Kommentar