Rik*_*Rik 6 javascript html5 angularjs visual-studio-2012
我正在尝试使用visual Studio 2012在Windows 8.1上使用angularJS创建HTML5/JS/CSS3应用程序.我目前仍然坚持将参数发送到其他视图.
谷歌时,我看到几个例子使用<a href="#/page/{{:pageId}}">link</a>当我在Windows 8应用程序中执行此操作并单击链接时,我收到以下错误.
没有安装应用程序来打开此类链接(不安全)
当我将{{:pageId}}代码放在A标签之间时,它会显示其ID.
app.js
var myApp = angular.module('myApp', ['ngRoute', 'ngResource']);
myApp.config(['$routeProvider', function($routeProvider) {
$routeProvider.when("/", { templateUrl: "views/home.html" })
.when("/page/:pageId", { templateUrl: "views/page.html" })
.otherwise({ redirectTo: "/" });
}]);
Run Code Online (Sandbox Code Playgroud)
什么是解决这个问题的解决方案?
--update--
我做了一些调试.在浏览器中它一切正常.在visual studio中我发现了以下内容:
<a class="ng-binding" href="unsafe:ms-appx://3595d292-0235-47cd-8db7-cb3019f29114/www/index.html#/page/1" data-ng-href="#/page/1">Select</a>
Run Code Online (Sandbox Code Playgroud)
看起来VS正在添加一些代码.在源代码中我没有包含href项目
我已经改变了链接,一切似乎都很好,只有加载了正确的变量VS不断在链接的边缘添加'unsafe:'.
Rik*_*Rik 11
问题解决了!
似乎ms添加的ms-appx会导致问题.通过添加以下代码解决了这个问题.
AngularJS 1.2
app.config(['$compileProvider', function($compileProvider) {
$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|file|ms-appx):/);
}]);
Run Code Online (Sandbox Code Playgroud)
对于1.1.x和1.0.x,请使用urlSanitizationWhitelist.
如果您使用PhoneGap,请记住添加https?以外的文件,否则链接将无效.
| 归档时间: |
|
| 查看次数: |
2270 次 |
| 最近记录: |