如何在角度js控制器中使用alasql?

时间:2016-03-11 03:15:04

标签: javascript angularjs alasql

我在angular js web应用程序中使用alasql。

我已经包含了

script(type='text/javascript',src='http://cdn.jsdelivr.net/alasql/0.2/alasql.min.js')

在我的玉器里。

在我的客户端,在我的module.js中,我已经包含了

angular.module('alasql.core', ['ui.router','restangular','alasql']);

在我的控制器中,我注入了alasql。

angular.module('alasql.core')
    .controller('alasql.core.controller', ['$rootScope', '$scope', '$window','alasql',

        function($rootScope, $scope, $window,alasql) {

            function _init() {
                console.log("Inside Home Controller");
                var years = [
                    { yearid: 2012 }, { yearid: 2013 },
                    { yearid: 2014 }, { yearid: 2015 },
                    { yearid: 2016 },
                ];

                var res = alasql.queryArray('SELECT * FROM ? AS years ' +
                    'WHERE yearid > ?', [years, 2014]);

                console.log("Array res");
                console.log(res);
            }

            _init();

            $('.ui.dropdown')
                .dropdown();
            $('.ui.accordion')
                .accordion();
        }
    ]);

我收到以下错误

它说模块错误。如果我删除' alasql'注射,没有错误。但是alasql.queryArray函数仍未定义。

将alasql注入我的角度js控制器的正确步骤是什么? 请告诉我。

此致 Sabarisri

1 个答案:

答案 0 :(得分:1)

请替换

alasql.queryArray('SELECT * FROM ? AS years ' +
                'WHERE yearid > ?', [years, 2014]);

alasql('SELECT * FROM ? AS years ' +
                'WHERE yearid > ?', [years, 2014]);