Javascript ng显示在ng初始化时工作不正常

Javascript ng显示在ng初始化时工作不正常,javascript,html,angularjs,Javascript,Html,Angularjs,这是我的密码 <div ng-init="$scope.bot_assistance='false'"> <label for="switch">Bot Assistance: <input type="checkbox" id="switch" ng-model="$scope.bot_assistance"> </label><br/> <p>Value:-{{ $scope.bo

这是我的密码

<div ng-init="$scope.bot_assistance='false'">
    <label for="switch">Bot Assistance:
        <input type="checkbox" id="switch" ng-model="$scope.bot_assistance">
    </label><br/>
    <p>Value:-{{ $scope.bot_assistance }}</p>
    <div ng-hide="$scope.bot_assistance">Bot Assist Disabled</div>
</div>

Bot援助:

值:-{$scope.bot\u assistance}

机器人辅助禁用
加载页面后,我可以看到
$scope.bot\u assistance='false'
的值,但是为什么我的
ng hide
评估为
true
而没有显示在页面上呢。 在我再次选中和取消选中后,它也会显示div block。因此,我猜它在选中复选框后会设置
ng hide=true
,并在再次单击复选框后显示,使
为false,这是我希望它工作的内容,但在页面加载后,它不会显示ng hide块。为什么有人能帮我。提前谢谢

  • 不要在模板内使用
    $scope
    (您真的在控制器内使用
    $scope.$scope
  • 不要用字符串值初始化布尔变量
    bot\u assistance='false'
  • 不要在模板内使用
    $scope
    (您真的在控制器内使用
    $scope.$scope
  • 不要用字符串值初始化布尔变量
    bot\u assistance='false'

  • 您真的在模板中使用了$scope吗?为什么视图中使用了
    $scope
    ?此外,这不是
    ng init
    的目的。在控制器中进行初始化。读取
    ngInit
    docsI需要在控制器外部进行初始化,因此使用带有$scope的ng init为什么需要在控制器外部进行初始化?只有在控制器运行以创建作用域之后,才能编译该视图。将视图中的默认值设置为传回控制器完全是落后的。如果需要,请在控制器外部使用它-使用
    app.run()
    生命周期挂钩或使用服务/常量提供值。您是否确实在模板中使用$scope?为什么在视图中使用
    $scope
    ?此外,这不是
    ng init
    的目的。在控制器中进行初始化。读取
    ngInit
    docsI需要在控制器外部进行初始化,因此使用带有$scope的ng init为什么需要在控制器外部进行初始化?只有在控制器运行以创建作用域之后,才能编译该视图。在视图中设置默认值以传递回控制器完全是一种倒退。如果您需要在控制器之外使用默认值,请使用
    app.run()
    生命周期挂钩或使用服务/常量提供值。感谢@Stanislav Kvitash的回答和解释感谢@Stanislav Kvitash的回答和解释