小编Han*_*der的帖子

在ng-repeat生成的<ul>列表中使用ng-model

我正在尝试<li>在我的每个中添加ng-model <ul>,所以我可以显示<li>我在列表中单击的标签.

<ul ng-repeat="prop in props" class={{prop.selected}} ng-click="setSelected(prop )" ng-model="selectedpropName">
    <li ng-cloak >{{prop.label}}</li>
</ul>
My Selected Property: {{selectedpropName}}
Run Code Online (Sandbox Code Playgroud)

我知道这不是正确的方式和角度方式来做到这一点.什么是正确的方法?请帮忙

html javascript angularjs

10
推荐指数
1
解决办法
1万
查看次数

使用childRouter时的Durandal路由器/生命周期事件

在使用Durandal构建的单页应用中,我有一个设置视图,具有不同的部分.我使用childRouter来解析不同的部分.

在这个应用程序中,许多代码都与Durandal使用的组合生命周期事件挂钩.例如,这个自定义绑定:

ko.bindingHandlers.autoFocus = {
    init: function (element) {
        var $element = $(element),
            setFocus = function () {
                $element.focus();
            };

        router.on('router:navigation:composition-complete', setFocus);
        ko.utils.domNodeDisposal.addDisposeCallback(element, function () {
            router.off('router:navigation:composition-complete', setFocus);
            $element = null;
        });
    }
};
Run Code Online (Sandbox Code Playgroud)

到目前为止,此自定义绑定已完美运行,将焦点设置为在显示视图时应用绑定的字段.

但是,使用子路由器,时间关闭.似乎主路由器在'router:navigation:composition-complete'加载"设置"视图时触发事件.此时,尚未显示子视图,并且具有自动聚焦绑定的元素无法获得焦点.当在设置页面之间导航时更清楚地说明这一点:在离开页面时,在旧子视图上具有自动聚焦绑定的字段获得焦点,然后显示新的子视图而没有聚焦元素.

有没有办法让子路由器也省略事件?或者可能让主路由器推迟事件直到子路由器完成?

我还读到这也适用于组合的其他阶段:例如,不会在子视图的viewmodel上调用deactivate回调.因此,在子路由器上触发事件的一般修复将是我正在寻找的理想解决方案.

提前致谢.

knockout.js durandal durandal-2.0

5
推荐指数
1
解决办法
2470
查看次数

防止他人复制您的单页应用程序(SPA)

保护使用其中一个趋势框架(主干,角形,余烬等)构建的SPA + REST应用程序的最佳方法是什么?

在一般环境中,任何人都可以复制所有资产,修改ajax端点并复制API(在基本CRUD情况下很容易),以获得应用程序的完整功能副本.缩小和混淆可以提供帮助,但不能完全解决问题.

javascript obfuscation single-page-application

4
推荐指数
1
解决办法
868
查看次数