我有一个场景,在点击按钮时,我触发了一个模式,在模式页脚中有一些信息和社交网络按钮。
当点击社交网络按钮时,我希望发送的url应该直接显示模式,而不是显示页面
路由:
.state('main', {
url: '/main',
templateUrl: 'views/mainView.html',
controller: 'mainCtrl'
})控制器:这就是我在按钮点击时打开一个模式的地方
$scope.fnModal = function() {
var modalInstance = $uibModal.open({
animation: ISOURCE_TOGGLE.set,
backdrop: 'static',
templateUrl: 'views/modal/rescheduleModalView.html',
controller: 'ModalCtrl'
})
}Modal ctrl:这是使用Socialshare服务点击社交分享按钮分享的地方
$scope.socialShare = function() {
Socialshare.share({
'provider': 'facebook',
'attrs': {
'socialshareUrl': window.location.href
}
});
}但这里的主页是共享的,正如我所希望的那样,模式应该直接共享
任何帮助都将不胜感激。
发布于 2017-01-27 17:34:03
为modal创建一个指令。
将该指令注入到控制器中,并在html中使用它,如下所示。
<modal data-some-attr="value"></modal>
发布于 2017-01-27 19:01:24
如果你的模式内容是静态的,当你打开你的模式(函数$scope.fnModal)时,你可以在URL中添加一个查询参数,如下所示:
$state.transitionTo('main', {modal: 'true'}, { notify: false });你不需要改变你的模态控制器中的任何东西。
当用户访问您的页面main时,您必须检查url中是否已将查询参数modal设置为true。如果是,则打开模式,否则只显示没有模式的页面。
https://stackoverflow.com/questions/41890413
复制相似问题