Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在AngularJS选项卡视图中设置默认收音机/输入/复选框值_Javascript_Angularjs_Ionic Framework - Fatal编程技术网

Javascript 在AngularJS选项卡视图中设置默认收音机/输入/复选框值

Javascript 在AngularJS选项卡视图中设置默认收音机/输入/复选框值,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,我有一个使用离子框架的AngularJS应用程序,它有一个带有设置选项卡的选项卡式视图,该选项卡将存储用户使用的选项。我想在应用程序最初启动时使用这些设置,虽然我可以使用localStorage中存储的值,但我希望能够检查设置选项卡上设置的选项 现在,如果加载“设置”选项卡,您将看到其中一个单选按钮在加载时从“关闭”设置为“打开”,这就是每当我将默认值设置为“打开”时发生的情况。如何在应用程序启动时设置,而不是在选项卡本身打开时设置 这就是my Controller.js的外观: angular

我有一个使用离子框架的AngularJS应用程序,它有一个带有设置选项卡的选项卡式视图,该选项卡将存储用户使用的选项。我想在应用程序最初启动时使用这些设置,虽然我可以使用localStorage中存储的值,但我希望能够检查设置选项卡上设置的选项

现在,如果加载“设置”选项卡,您将看到其中一个单选按钮在加载时从“关闭”设置为“打开”,这就是每当我将默认值设置为“打开”时发生的情况。如何在应用程序启动时设置,而不是在选项卡本身打开时设置

这就是my Controller.js的外观:

angular.module('starter.controllers', [])

.controller('DashCtrl', function($scope, $window, $ionicPlatform) {

    $ionicPlatform.ready(function() {
        if ( ! $window.localStorage.getItem( 'grossoption' ) ) {
        $window.localStorage.setItem( 'grossoption', 'year' );
    }

    if ( ! $window.localStorage.getItem( 'resultoption' ) ) {
        $window.localStorage.setItem( 'resultoption', 'month' );
    }
    });

    $scope.grossOptionsList = [
    { text: "Year", value: "year" },
    { text: "Month", value: "month" },
    { text: "Week", value: "week" },
    { text: "Day", value: "day" }
    ];

    $scope.resultsOptionsList = [
    { text: "Year", value: "year" },
    { text: "Month", value: "month" },
    { text: "Week", value: "week" },
    { text: "Day", value: "day" }
    ];

// Default values
    $scope.data = {};
    $scope.data.grossOptions = 'year';
    $scope.data.resultOptions = 'month';


    $scope.updateGrossOptions = function(item) {
      $window.localStorage.setItem( 'grossoption', item.value );
        console.log( 'Gross option: ' + item.value );
    }

    $scope.updateResultOptions = function(item) {
      $window.localStorage.setItem( 'resultoption', item.value );
        console.log( 'Results option: ' + item.value );
    }

})

.controller('SettingsCtrl', function($scope, $window, $ionicPlatform) {
$ionicPlatform.ready(function() {


    if ( ! $window.localStorage.getItem( 'toggle1' ) ) {
        $window.localStorage.setItem( 'toggle1', 'true' );
    }

    if ( ! $window.localStorage.getItem( 'toggle2' ) ) {
        $window.localStorage.setItem( 'toggle2', 'false' );
    }


});

$scope.data = {};
$scope.data.toggle1 = $window.localStorage.getItem( 'toggle1' ) === "true";
$scope.data.toggle2 = $window.localStorage.getItem( 'toggle2' ) === "true";

$scope.update_toggle1 = function() {
    $window.localStorage.setItem( 'toggle1', $scope.data.toggle1 );
    console.log( 'Toggle 1: ' + $scope.data.toggle1 );
}

$scope.update_toggle2 = function() {
    $window.localStorage.setItem( 'toggle2', $scope.data.toggle2 );
    console.log( 'Toggle 2: ' + $scope.data.toggle2 );
}
}) 我已经设置好,当您加载“设置”选项卡时,它会显示我的应用程序当前的行为

感谢您提供有关如何以角度最佳处理此问题的反馈。

您可以在“ng checked”中使用“if”条件,如下所示:

<ion-toggle ng-checked="(myVar== 1)?true:false;" ng-change="myFunc(myVar)" ng-model="myVar" toggle-class="toggle-calm">{{myVar}}</ion-toggle>
{{myVar}

我认为我不理解您的问题,您的Plunk似乎工作正常,它总是将控制器中指定的值作为选定值。。。