首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >拖放引导弹出不起作用

拖放引导弹出不起作用
EN

Stack Overflow用户
提问于 2015-09-17 23:01:32
回答 1查看 133关注 0票数 2

我正在制作聊天应用程序。在第二页(主页)上,我有用户列表。当我点击用户时,我想打开弹出窗口。我用这段代码来弹出。

wilton/a3gyq/5/light/

但是,当我单击某个用户而不是显示弹出时,将重定向到第一页登录。

这是我的代码:

home-controller.js

代码语言:javascript
运行
复制
 (function () {

    'use strict';
    function HomeController($scope,redirectService) {

        $scope.homeController = {};

        $scope.homeController.users = [
            {
                icon: 'img/online.png',
                name: 'Vanessa Angel'
            },
            {
                icon: 'img/online.png',
                name: 'Tom Baker'
            }
        ];

        $scope.homeController.logOut = function () {
            redirectService.loginToLogin();
        };
    }


    angular.module('chatApp').controller('homeController', HomeController);
})();

home.tpl.html

代码语言:javascript
运行
复制
<div id="wrapper">

    <div class="right">
        <input type="submit" id="logOut" class="btn btn-primary" value="Sign Out" ng-click="homeController.logOut()">
    </div>
    <div class="left clear">
        <h1 style="font-family: 'Helvetica Neue'"><b>Online users</b></h1>

        <div ng-repeat="user in homeController.users">
            <user-directive user-list="user"></user-directive>

        </div>

    </div>
</div>

user-directiv.js

代码语言:javascript
运行
复制
(function () {
    'use strict';

    angular.module('chatApp').directive('userDirective', function () {
        return {
            restrict: 'E',
            scope: {
                userList: '='
            },
            templateUrl: 'src/home/user.tpl.html'
        };
    });
})();

指令tmpl

代码语言:javascript
运行
复制
<div>
    <ul class="list-group">
        <li class="list-group-item">
            <p class="item">
                <a href="#myModal" data-backdrop="false" data-toggle="modal">
                    <img width="20px" height="20px" ng-src="{{userList.icon}}"/><span class="icon-text">{{userList.name}}</span>
                </a>
            </p>
        </li>
    </ul>
    <div id="myModal" class="modal fade">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <h4 class="modal-title">Settings</h4>

                </div>
                <div class="modal-body">
                    <p>Settings</p>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                    <button type="button" class="btn btn-primary">Save changes</button>
                </div>
            </div>
            <!-- /.modal-content -->
        </div>
        <!-- /.modal-dialog -->
    </div>
    <!-- /.modal -->
</div>

重定向服务

/** *由用户在2015年9月15日创建。*/

代码语言:javascript
运行
复制
(function () {
    'use strict';
    angular.module('chatApp').factory('redirectService', function ($state) {
        var service = {};
        service.loginToHome = function () {
            $state.go('home');
        };

        service.loginToLogin = function(){
            $state.go('login');
        };
        return service;
    });
})();

编辑为配置状态添加了app.js

代码语言:javascript
运行
复制
(function () {

    'use strict';
    angular.module('chatApp', ['ui.router', 'ui.bootstrap'])
        .config(function ($stateProvider, $urlRouterProvider) {

            $urlRouterProvider.otherwise("/login");

            $stateProvider
                .state('login', {
                    url: '/login',
                    templateUrl: 'src/user/login/login.tpl.html',
                    controller: 'loginController'
                })
                .state('home', {
                    url: '/home',
                    templateUrl: 'src/home/home.tpl.html',
                    controller: 'homeController'

                })
        });
})();
EN

回答 1

Stack Overflow用户

发布于 2015-09-17 23:12:26

因此,您正在使用一些url路由服务(很可能是角用户界面路由器),并且您有一个带有href='#myModal'的锚标记,它使用twitter引导(就像我假设你是/那个小提琴一样)将与数据切换结合起来,打开您的模式。

但是,由于您使用的是角用户界面路由器,路由器可能尝试将href='#myModal'读入状态(即/myModal或/home.myModal),只是它不是一个有效的状态,因此它是重定向到/login或任何您将$urlRouteProvider.otherwise设置为的状态。

您可以使用data-target='#myModal'而不是href标记来修复这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32641278

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档