Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 防止routeparams在链接刚刚打开时更改视图#&引用;_Javascript_Angularjs_Angular Ui Router - Fatal编程技术网

Javascript 防止routeparams在链接刚刚打开时更改视图#&引用;

Javascript 防止routeparams在链接刚刚打开时更改视图#&引用;,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我使用的$routeParams具有以下配置: controllersModule.config(['$routeProvider', function($routeProvider) { $routeProvider. when('/home', { templateUrl: 'views/home.html', controller: 'HomeController' }).

我使用的$routeParams具有以下配置:

controllersModule.config(['$routeProvider',
    function($routeProvider) {
        $routeProvider.
        when('/home', {
            templateUrl: 'views/home.html',
            controller: 'HomeController'
        }).
        when('/history', {
            templateUrl: 'views/history.html',
            controller: 'HistoryController'
        }).
        otherwise({
            redirectTo: '/home'
        });
    }
]);
这很好用

但是在我的页面中有一些链接有
href=“#”
。单击这些链接时,我会看到一个空白页。
这些链接中的大多数都会在项目中消失,因为它们只是占位符,但如果有什么方法可以防止这种情况发生,我还是很好奇。 我已尝试从“a”标记中删除href属性,但这将删除鼠标上方的指针(我知道我可以添加一个css规则),但我想要一个解决方案,我可以将它放在路由中,用
javascript:void(0)替换
#

当浏览器遵循javascript:URI时,它会计算 然后用返回的 值,除非返回的值是未定义的
,因此页面保持不变且不执行任何操作

元素不执行任何操作

<a href="javascript:void(0);">
  Click here to do nothing
</a>
#
替换为
javascript:void(0)

当浏览器遵循javascript:URI时,它会计算 然后用返回的 值,除非返回的值是未定义的
,因此页面保持不变且不执行任何操作

元素不执行任何操作

<a href="javascript:void(0);">
  Click here to do nothing
</a>

这将解决普通html链接的问题,问题是它们不会与ng href一起工作,因为它们会被angular视为不安全。
ng href
仅当您想将
$scope
值绑定到
URL
时才需要,在这种情况下不需要使用
ng href
,这是因为,正如我在问题中所说,一些链接URL来自保存到作用域中的对象。恰巧,对象中的一些URL是“#”,正如我在问题中所说,我已经发现了这一点,您需要使用css规则为没有href属性的链接添加指针光标。所以我希望能在路由中找到一个解决方案,但似乎没有其他选择。感谢这将解决正常html链接的问题,问题是它们不会与ng href一起工作,因为它们会被angular视为不安全。
ng href
仅当您想将
$scope
值绑定到
URL
时才需要,在这种情况下不需要使用
ng href
这是因为,正如我在问题中所说,一些链接URL来自保存到作用域中的对象。恰巧,对象中的一些URL是“#”,正如我在问题中所说,我已经发现了这一点,您需要使用css规则为没有href属性的链接添加指针光标。所以我希望能在路由中找到一个解决方案,但似乎没有其他选择。谢谢