启动 angular.bootstrap 后取消引导? [关闭]

2023-12-11

尝试重新编译角度应用程序时遇到问题。

有没有办法在调用 angular.bootstrap 后取消引导?

一旦我在已经引导的情况下执行 angular.bootstrap ,就会导致错误

Thanks!


似乎 Angular 的设计目的并不是为了做到这一点,而且我想不出您想要这样做的任何充分理由(但也许您愿意)。也就是说,从观察Angular.js 源代码这似乎是唯一的方法could工作是删除最初从 DOM 引导的元素,然后重新添加它,然后再次尝试引导。

这是一个jsfiddle概念证明,引导一个超级简单的应用程序,然后在 5 秒后再次引导自身。我会非常犹豫是否要在复杂的应用程序上做这样的事情,但它似乎确实有效。

 var bootstrapApp = function(appDiv) {
    var isSecondTime = false;
    if (appDiv) {
        document.body.removeChild(appDiv);
        isSecondTime = true;
    }
    appDiv = document.createElement('div');
    appDiv.id = "myApp";
    appDiv.innerHTML = (isSecondTime ? ' 2nd bootstrap': ' 1st bootstrap') + template.innerHTML;
    document.body.appendChild(appDiv);
    angular.bootstrap(angular.element(appDiv), ['myApp']);

    return appDiv;
}

var createdAppDiv = bootstrapApp(null);

setTimeout(function() {
    console.log("try boostraping again");
    bootstrapApp(createdAppDiv);
}, 5000);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

启动 angular.bootstrap 后取消引导? [关闭] 的相关文章