没有Web服务器的角度单页面应用程序

时间:2017-04-10 12:38:10

标签: javascript angularjs gruntjs

我们有一个单页面应用程序,我们想在一个zip文件中共享;所以它必须在没有服务器的情况下独立运行。

通常我们使用grunt构建我们的应用程序,使用" localhost:8080"来调用服务器。我们在主页上。

我们目前没有多条路线,因此我们的路线定义如下:

.config(['$routeProvider', function ($routeProvider) {
  $routeProvider
    .when('/',
      {
        template: function(params) {
          return !params.link ? '<data-frame></data-frame>' : '<data-seo></data-seo>';
        },
        reloadOnSearch: false
      })
    .otherwise(
      { templateUrl: 'templates/404.html', reloadOnSearch: false }
    );
}])

Html5Mode已启用(如果相关):

.config(['$locationProvider', function ($locationProvider) {
  $locationProvider.html5Mode({
    enabled: true,
    requireBase: true
  });
}])

所以问题是:当我们运行任务时,#grunt serve:dist&#34;我们在dist目录中构建应用程序,生成的文件看起来也很好(index.html,main.js&amp; vendor.js等)。我们所有的html模板都包含在main.js.但是当我们调用index.html(im Browser&#34; file:/// C:/ourApp/dist/local/index.html &#34;)时,我们只看到了404 page(我们的后备路由定义)。所以Angular很难找到路线&#34; /&#34;。可能是什么原因?

编辑:当我们安装任何网络服务器(它不一定是咕噜声)并复制其中的文件时,单页应用程序工作..但是有没有其他方法可以让它在没有任何网络服务器的情况下工作?

0 个答案:

没有答案