gpt4 book ai didi

javascript - 如何根据条件实例化 ng-controller

转载 作者:可可西里 更新时间:2023-11-01 01:18:50 24 4
gpt4 key购买 nike

我问了这个问题,但我问的具体问题发生了巨大变化。

我有一段代码:

  <div ng-attr-controller="{{pings || 'PingsCtrl as pings' }}">
<h1 ng-click="pings.press()">asdf</h1>
</div>

此代码被注入(inject)到两个 html 页面中。一个页面已经调用了 PingsCtrl。另一个没有。我真的想让这段代码保持干爽,我只想引用上面的代码。

如果 PingsCtrl 尚未实例化,我如何编写上面的代码来生成 ng-controller

这是两个 html 页面。

HTML

// First page
<html ng-app="coolApp">
<div ng-controller="PingsCtrl as pings">
<div ng-attr-controller="{{pings || 'PingsCtrl as pings' }}">
<h1 ng-click="pings.press()">asdf</h1>
</div>
</div>
</html>

// Second page
<html ng-app="coolApp">
<div ng-attr-controller="{{pings || 'PingsCtrl as pings' }}">
<h1 ng-click="pings.press()">asdf</h1>
</div>
</html>

Javascript 在这里:

angular.module('coolApp', [])

.controller('PingsCtrl', function() {
var vm = this;

vm.press = function() {alert(123)};
})

出了什么问题,我该如何解决?

最佳答案

只需使用一项服务。它确实是在页面之间拥有通用数据和功能的预期结构。

您尝试的部分问题是,无论您是否设法保留 Controller ,Angular 都有自己的管理,不会跟随您,并且会在没有您的情况下刷新组件。您会遇到诸如 $scope 之类的情况,它实际上与您正在查看的页面不匹配,最终会导致比其值(value)更多的问题。

关于javascript - 如何根据条件实例化 ng-controller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34403237/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com