zoukankan      html  css  js  c++  java
  • angular学习

    ng-options:

    *ng-model

    <select class="bs-select form-control" ng-model="queryModel.gl_code" ng-options="c.gl_code as c.gl_name for c in queryModel.category"></select>

     *注意接口异步操作

    for循环接口异步操作,递归解决

        $scope.food = function() {
            $scope.hashModel = {
                hash: 0
            }
            $scope.filter.data = []
            $scope.filter.hashData = hashSignature($scope.hashModel);
            goodsService.queryTopCategory(13, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature).then(function(result){
                // console.log(result);
                $scope.sub = function(i){
                    if(i == result.length) {
                        $('#tree_1').jstree({
                        'core' : {
                                "multiple": false,//单选,
                                "themes":{
                                    "theme" : "classic",
                                    "dots" : true,
                                    "icons" : false
                                },
                                'data' : $scope.filter.data
                            }
                        });
                    }
                    else {
                        $scope.filter.hashData = hashSignature($scope.hashModel);
                        goodsService.querySubClassification(14, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, result[i].gl_code).then(function(result2){
                            // console.log(result2)
                            var children = [];
                            for(var j = 0; j < result2.length; j++) {
                                children.push({'text': result2[j].gl_name, 'id': result2[j].gl_code});
                            }
                            $scope.filter.data.push({'text':result[i].gl_name,'id': result[i].gl_code, 'children': children});
                            $scope.sub(i+1);
                        });
                    }
                }
                $scope.sub(0);
            });
    
            $('#tree_1').on("changed.jstree", function (e, data) {
                // console.log("The selected nodes are:");
                // console.log(data.selected);
                // console.log(data.instance.get_node(data.selected[0]).text);
                if(data.selected[0].length == 4) {
                    $scope.filter.goodSubmit = 1;
                    $scope.addModel.gl_code = data.selected[0];
                    $scope.addModel.gl_name = data.instance.get_node(data.selected[0]).text;
                }
                else {
                    $scope.filter.goodSubmit = 0;
                }
            });
            $('#basic').modal('show');
        }
    MetronicApp.controller('productionGoodsManageController', function ($rootScope, $scope, $http, $timeout, goodsService) {
        $scope.table = $('#sample_2').DataTable();
    
        /*$scope.info = $scope.table.page.info();
        console.log($scope.info);*/
        $scope.queryModel={
            c_id: "f3f3c9bf-d91a-4d1f-b338-dedadff6c35f",
            g_name: '',
            gl_code: "",
            g_type: 0,
            page: 1,
            rows: $scope.table.page.info().length
        };
    
        $scope.productModel = {
            pages: '',
            products: []
        };
    
        $scope.filter = {
            show_len: 5,
            turn_len: 2,
            g_types: [{code: 0, type: "标准商品"},{code: 1, type: "非标准商品"}],
            g_type_array: ["标准商品","非标准商品"],
            gll_code: "01"
        };
    
        $scope.loopQuery = function(p) {
            //alert(p)
            while($scope.queryModel.page < p) {
                $scope.queryModel.page++;
                $scope.filter.hashData = hashSignature($scope.queryModel);
                goodsService.getMemberInfo(15, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, $scope.queryModel).then(function(result){
                    //console.log(result);
                    for(var i = 0; i < $scope.queryModel.rows; i++) {
                        $scope.productModel.products.push(result.products[i]);
                    }
                    // console.log($scope.productModel);
                });
            }
        };
    
        //查询所有一级商品分类信息
        $scope.filter.hashData = hashSignature($scope.queryModel);
        goodsService.queryTopCategory(13, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature).then(function(result){
            // console.log(result);
            $scope.filter.category = result;
            // console.log($scope.filter.category);
            // alert($scope.queryModel.category[0].gl_name)
        });
    
        //根据父级商品分类编号查询子集商品分类
        /*$scope.filter.hashData = hashSignature($scope.queryModel);
        goodsService.querySubClassification(14, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, $scope.filter.gll_code).then(function(result){
            // console.log("sub");
            $scope.queryModel.gl_code = result[0].gl_code;
            $scope.filter.sub = result;
            // console.log($scope.filter.sub);
        })*/
    
        //根据父级商品分类编号查询子集商品分类
        $scope.querySub = function() {
            $scope.filter.hashData = hashSignature($scope.queryModel);
            goodsService.querySubClassification(14, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, $scope.filter.gll_code).then(function(result){
                // console.log("sub");
                $scope.queryModel.gl_code = result[0].gl_code;
                $scope.filter.sub = result;
                // console.log($scope.filter.sub);
            })
        }
    
    
        $scope.query = function() {
            /*$scope.info = $scope.table.page.info();
            console.log($scope.info);*/
            $scope.queryModel.page = 1;
            $scope.filter.hashData = hashSignature($scope.queryModel);
            goodsService.getMemberInfo(15, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, $scope.queryModel).then(function(result){
                // console.log(result);
                $scope.productModel.pages = result.paramcentcount;
                $scope.productModel.products = result.paramData;
                //$scope.productModel.pages = 3;
                $scope.loopQuery(Math.min($scope.productModel.paramcentcount, $scope.filter.show_len));
            });
        };
    
        /*$(".next").click(function () {
            //alert("next")
            
        });
        $(".prev").click(function () {
            //alert("prev")
            
        });*/
    
    
        $(".input-sm").change(function(){
            //alert($(this).children('option:selected').val());
            $scope.queryModel.rows = $(this).children('option:selected').val();
            var ap = $scope.table.page.info().page;
            var total = $scope.table.page.info().recordsTotal;
            $scope.queryModel.page = parseInt(total/$scope.queryModel.rows);
            var surplus = total%$scope.queryModel.rows;
            if(surplus != 0) {
                $scope.productModel.products.splice($scope.queryModel.page*$scope.queryModel.rows+1, surplus);
            }
            $scope.queryModel.page++;
            $scope.filter.hashData = hashSignature($scope.queryModel);
            goodsService.getMemberInfo(15, $scope.filter.hashData.time, $scope.filter.hashData.rannum, $scope.filter.hashData.signature, $scope.queryModel).then(function(result){
                //console.log(result);
                $scope.productModel.pages = result.pages;
                for(var i = 0; i < $scope.queryModel.rows; i++) {
                    $scope.productModel.products.push(result.products[i]);
                }
                console.log($scope.productModel);
            });
            if(ap + $scope.filter.turn_len > $scope.queryModel.page) {
                $scope.loopQuery(Math.min(ap + $scope.filter.turn_len, $scope.productModel.pages));
            }
        });
    
        $(".pagination").bind("click", "a", function() {
            var ap = $scope.table.page.info().page;  
            if(ap + $scope.filter.turn_len > $scope.queryModel.page) {
                $scope.loopQuery(Math.min(ap + $scope.filter.turn_len, $scope.productModel.pages));
            }
            // alert($scope.queryModel.page + " in " + $scope.queryModel.pages);  
        }); 
    
        /*var table = $('#sample_2').DataTable();
        $('#sample_2').on( 'page.dt', function () {
            var info = table.page.info();
            alert(info.page + " " + info.pages)
            //$('#pageInfo').html( 'Showing page: '+info.page+' of '+info.pages );
        } );*/
    });

     ng-bind-html:

    <div ng-repeat="article in articles">
            <div class="panel-heading">
                <h4><b>{{article.title}}</b></h4>
            </div>
            <div class="panel-body">
                <article id="word-display" ng-bind-html="article.content | trustHtml">
                </article>
            </div>
        </div>
    success(function (data) {
                            $scope.articles = data;
    });
    myApp.filter('trustHtml', function ($sce) {
            return function (input) {
                return $sce.trustAsHtml(input);
            }
        });

     $interval:

    var timer = $interval(function(){
    }, 100, 3);
    timer.then(function(){
        console.log("done");
    });
    
    var timer = $interval(function(){},100, 10);
    timer.then(success, error, notify);
    function success(){
    console.log("done");
    }
    function error(){
    console.log("error");
    }
    function notify(){
    console.log("每次都更新");
    }
    
    var timer = $interval(function(){},100, 10);
    this.cancel = function(){
    $interval.cancel(timer);
    }
  • 相关阅读:
    《Apache Velocity用户指南》官方文档
    Mockito教程
    GitHub访问速度慢的解决方法
    使用log4jdbc记录SQL信息
    分环境部署SpringBoot日志logback-spring.xml
    SpringBoot入门之spring-boot-maven-plugin
    swagger报No operations defined in spec!
    delphi 时间
    DELPHI常用类型及定义单元
    delphi 多线程编程
  • 原文地址:https://www.cnblogs.com/ACMessi/p/7128581.html
Copyright © 2011-2022 走看看