我正在构建一个角度测验,我试图根据测验是否开始显示一个按钮。用户登录后转到他们的用户页面,当他们还没有开始测验时,我想显示“开始测验”按钮。在测验期间,他们可以访问他们的用户页面,但只有“简历测验”应该是可见的。
作为我的最终测试,我将其简化为这一点。在我的控制器中,我特别声明:
vm.started = false;
然后在 html 文件中我使用这个逻辑:
<button ng-hide"reg.started" ng-click="reg.startQuiz()">Start quiz</button>
<button ng-show"reg.started" ng-click="reg.resumeQuiz()">Resume quiz</button>
所以你会假设,因为started被设置为false,所以只有开始测验按钮会出现。但是,两个按钮都一直显示,我似乎无法修复它。当我在 vm.started 上执行 console.log 时,它显示为 false。ng-click 工作正常。改用函数(返回布尔值)也不起作用。