如何从一个javascript调用变量到另一个javascript?

时间:2017-10-25 07:20:58

标签: javascript angularjs web-sql

我是AngularJS的新手。我使用WebSQL作为数据库,操作我的文件时遇到了一些问题。我有2个名为https://yoururl.com/assets/imgfolder/img.jpgservice.js的javascript文件。

service.js:

controller.js

controller.js:

var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);

            db.transaction(function (tx) {
                var sql = ('CREATE TABLE IF NOT EXISTS CART (id unique, name, price)');
                });

            function addToCart(id, name, price){
                 db.transaction(
                         function (tx) {
                             tx.executeSql(
                                 "INSERT INTO CART (id, name, price) VALUES (NULL, ?, ?);",
                                  [data.name, 
                                  data.price, 

                                  ],
                     );
            }

如何将我的数据库从Service.js调用到Controller.js?

1 个答案:

答案 0 :(得分:0)

您必须在服务对象中定义您的变量,例如:

  this.db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);

       this.db.transaction(function (tx) {
            var sql = ('CREATE TABLE IF NOT EXISTS CART (id unique, name, 
          price)');
            });

        function addToCart(id, name, price){
             this.db.transaction(
                     function (tx) {
                         tx.executeSql(
                             "INSERT INTO CART (id, name, price) VALUES 
 (NULL, ?, ?);",
                              [data.name, 
                              data.price, 

                              ],
                 );
        }

然后你必须导入你的服务,无论你的服务名称是什么,让我们说globalService。

angular.module('login').controller('Controller',
    ['globalService', '$scope','$state', '$webSql', function(globalService, $scope,$state,$webSql) {

        var self = this;
        self.addToCart = addToCart;
        self.database = globalService.db;


        function database(){
            self.database = db;
            return database;
        }

        function addToCart(id, name, price) {
            alert("Success add to your cart" + id);
        }
        }
    ]);