标签: single-page-application

mod_rewrite到index.html会断开深层URL的相对路径

对于单页应用程序,我的.htaccess文件中具有以下RewriteRule,将所有流量定向到index.html,以便JS可以解析URL并相应地触发控制器。

  # html5 pushstate (history) support:
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !index
  RewriteRule (.*) index.html [L]
Run Code Online (Sandbox Code Playgroud)

这对于顶级网址(如www.mydomain.com/resource)正常工作,但对于更深层次的诸如www.mydomain.com/resource/123之类的URL,则在index.html中时会中断当前目录的值(。)。

例如,像这样在我的index.html中的脚本标记

<script src="js/app/config.js"></script>
Run Code Online (Sandbox Code Playgroud)

会翻译成src =“ resource / app / config.js”

或者,对于类似“ www.mydomain.com/more/nested/resource/123”的网址,同一js文件上的src将被解释为“ more / nested / resource / app / config.js”。

不用说,这些文件不存在,应用程序会中断。

任何人都可以了解这里发生的一切吗?谢谢。

javascript apache mod-rewrite single-page-application

1
推荐指数
1
解决办法
4538
查看次数

为什么我的Angular.js $ routeProvider什么都不做?

我正在通过跟随Egghead.io的视频来学习Angular.js.我在$ routeProvider视频,我的应用程序根本没有路由.

这是超基本的,这是脚本(app.js):

var app = angular.module('myApp', []);

// routes
app.config(function ($routeProvider) {
    $routeProvider.when('/pizza', { template: 'Yum!!' });
});

app.controller('FirstCtrl', function ($scope) {
    $scope.data = { message: "Hello" };
});
Run Code Online (Sandbox Code Playgroud)

和HTML:

<div ng-app="myApp">
    <div ng-controller="FirstCtrl">
    {{data.message + " world"}}
    </div>
</div>

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.1.3/angular.min.js"></script>
<script src="app.js"></script>
Run Code Online (Sandbox Code Playgroud)

根据我的理解,http://host/#/pizza应该只显示"百胜!!" 因为我在模板中传递了一个字符串.它似乎没有做任何事情,我仍然得到"你好世界"的评价FirstCtrl.

为什么不在$routeProvider我的应用程序中做任何事情?

javascript url-routing angularjs single-page-application

1
推荐指数
1
解决办法
6368
查看次数

将DurandalJS中的数据传递给其他视图

我正在开发一个SPA webapplicationDurandalJS,但我不明白的东西.

让我们说我有page 12.在page 1一个模式中,在databasewith 中创建一个实体BreezeJS并返回一个密钥(在数据库中生成).

我想传递这个获取的密钥,然后转到我的第二页,第2页.我知道当我把它放在网址中时我该怎么做

http://localhost:60312/#/page2?orderid=2&repairorder=2
Run Code Online (Sandbox Code Playgroud)

但这不是方法Durandal,或者是它?用户可以输入他自己的一些后果!

我怎么解决这个问题?

single-page-application durandal

1
推荐指数
2
解决办法
4210
查看次数

Spa热毛巾用户认证模块?

我安装了热毛巾模板.但是,与内置spa模板不同,没有登录代码.我可以使用Visual Studio内置的spa模板创建一个空项目并复制登录代码吗?

我想使用外部登录代码登录facebook.

asp.net asp.net-mvc asp.net-mvc-4 single-page-application hottowel

1
推荐指数
1
解决办法
1969
查看次数

如何在浏览器选项卡之间共享单个js资源?

例如,我想通过socket.io,longpolling等多个选项卡刷新聊天消息,无论我拥有什么...为此,我只想对所有选项卡使用单个连接。我该怎么做?我可以将公用数据存储在localStore,Cookie等...中,并且我需要某种信号量,该信号量仅将单个同步器资源分配给一个选项卡,并且在关闭该选项卡后,将其提供给另一个选项卡,依此类推。 ..那怎么可能?我想到的唯一解决方案是,通过onbeforeunload告诉localStore资源是免费的,但这并不是在所有浏览器中都有效。还有其他选择吗?

javascript long-polling local-storage socket.io single-page-application

1
推荐指数
1
解决办法
3080
查看次数

如何在AngularJS单页面应用程序中返回http状态代码?

我有一个AngularJS单页面应用程序用于显示短生命资源,其中包含/ auction/103等网址.但是,当资源不再可用时,我希望从搜索引擎索引中删除该页面.因此,我需要在搜索引擎爬虫经过时返回状态代码410或404.

但是,如何在单页应用程序中执行此操作,其中页面未在服务器上呈现?

seo http-status-codes angularjs single-page-application

1
推荐指数
1
解决办法
1617
查看次数

使用挖空文本创建新行

我正在创建SPA.我正在使用knockout和observable数组来迭代json数组.有时我在文本中有br标签,并且使用data-bind ="text:myVar"我想要排队.问题是,br标签不会工作,因为我可以看到<br />除了新线.我的问题是:如何使用json数据中的br标签强制knockout data-bind创建新行?我试图使用"白色空间:预包装",但没有用.

javascript json knockout.js javascript-databinding single-page-application

1
推荐指数
1
解决办法
3611
查看次数

ASP .NET 5中的简单Angular SPA - 启动时获取空白页面

我正在尝试在ASP .NET 5中设置一个非常简单的Angular单页面应用程序.我已经开始了一个空项目 - 目前唯一的角度依赖是ngRoute.

问题:

当我运行项目时,我的浏览器中出现一个空白页 - 开发人员控制台中没有错误.

编辑

[]angular.module('app', []).controller建议中删除了但现在抛出了一个错误:

未捕获错误:[$ injector:modulerr]由于以下原因无法实例化模块应用程序:错误:[$ injector:unpr]未知提供程序:a

我正在使用npm,bower和grunt - 但我不认为他们与这个问题有任何关系.

这是项目结构的样子:

在此输入图像描述

这是index.html:

<!DOCTYPE html>
<html ng-app="app">
<head>
    <meta charset="utf-8" />
    <title></title>
    <!-- angular -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0-rc.0/angular.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0-rc.0/angular-route.js"></script>
    <!-- app -->
    <script src="app.js"></script>
</head>
<body ng-cloak>
    <div ng-view>
    </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是app.js:

(function () {
    'use strict';

    var app = angular.module('app', ['ngRoute']);

    app.config(function ($routeProvider) {
        $routeProvider
            .when('/', {
                templateUrl: 'Views/home.html',
                controller: 'home'
            })
            .otherwise({
                redirectTo: '/'
            });
    }); …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs single-page-application angularjs-ng-route asp.net-core

1
推荐指数
1
解决办法
853
查看次数

HTTP/2有什么好处:Apache vs Nginx?

我正在为大型SPA应用程序选择一个更好的Web服务器,其中包含许多JS和css文件.使用HTTP/2,我们现在无法将它们合并为两个大文件(JS为3 MB),在慢速连接时需要很长时间才能加载.但是哪种服务器更适合新的HTTP/2范例?

Nginx旨在解决http/1问题,它的优点是更好地服务于大量连接,HTTP/2只有一个连接用于所有文件,因此该功能现在似乎是多余的.你觉得怎么样,你能告诉我什么?

apache nginx single-page-application http2

1
推荐指数
1
解决办法
1345
查看次数

为什么在redux存储中放置同步状态?

将非异步状态放在redux存储中有什么意义?例如,你有一个模态,显示或没有显示,你想写这么多只是为了切换?将它作为本地状态放在react组件中,并使用setState更新它有什么问题?

我决定哪个州应该通过redux的经验法则是数据是异步的,否则商店里会有这么多的ui状态,有一天它会变得如此之大,你的想法是什么?

javascript flux single-page-application reactjs redux

1
推荐指数
1
解决办法
62
查看次数