首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式更改当前位置

以编程方式更改当前位置
EN

Stack Overflow用户
提问于 2016-06-06 03:51:51
回答 1查看 778关注 0票数 0

如何以编程方式更改当前位置?

app-location位于父元素上,我希望从子元素中更改它。

这是家长的节选

代码语言:javascript
复制
dom-module(id='test', assetpath='/')
    template
        app-location(route='{{route}}')
        app-route(route='{{route}}', pattern='/:page', data='{{rootData}}', tail='{{rootTail}}')
        ...
        login-page(name='login', route='[[rootTail]]')
        ...
    script.
        Polymer({is: 'test');

还有孩子

代码语言:javascript
复制
dom-module(id='login-page')
    template
        div(class='layout horizontal center-justified mh400')
            div(class='layout vertical center-justified')
                form(is='iron-form', id='login-form', method='post', action='/api/auth/login', on-iron-form-response='onResponse')
                    ...
    script.
        Polymer({
            is: 'login-page',
            onResponse: function (event) {
                var resp = event.detail.response;

                if (resp.success) {
                    // Change here the location
                }
            }
        })

对不起,不是html,而是Jade,但是给我理解我的想法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-10 17:51:13

app-location只需与浏览器的地址栏进行接口。它在内部使用iron-location。没有什么能阻止您将它包含在子元素中。这里的角色是更新地址栏(而不是监听更改)。在JavaScript中,选择元素并更新其path

父元素中的app-location将检测地址栏中的更改并更新route

代码语言:javascript
复制
dom-module(id='login-page')
    template
        app-location
        div(class='layout horizontal center-justified mh400')
            div(class='layout vertical center-justified')
                form(is='iron-form', id='login-form', method='post', action='/api/auth/login', on-iron-form-response='onResponse')
                    ...
    script.
        Polymer({
            is: 'login-page',
            onResponse: function (event) {
                var resp = event.detail.response;

                if (resp.success) {
                    // TODO: Update with your new path
                    this.shadowRoot.querySelector('app-location').path = '';
                }
            }
        })
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37649297

复制
相关文章

相似问题

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