Breezejs"对象不是一个功能"导致"未捕获错误:此查询没有可用的元数据" - 当我尝试使我的数据处于优势时

时间:2015-03-17 09:27:32

标签: breeze hottowel

我正在使用breezejs在VS2012中使用HotTowel SPA开发一个演示应用程序。 错误“未捕获错误:没有可用于此查询的元数据”,这种情况并非总是发生,但有时当我尝试填充数据时(我在初始页面加载时调用主要方法,这基本上是一个简单的查询),用于查询。有时应用程序无法加载并提供错误,但另一方面它不会失败 - 它的工作原理。

这是代码

 function primeData() {
        var promise = Q.all([
        getLookups(),
        getAllContactDetails(null, true)])
           .then(applyValidators);

        return promise.then(success);

        function success() {

            datacontext.lookups = {

                       // code to populate lookups 
            };
            log('Primed data', datacontext.lookups);

        }

        function applyValidators() {
            model.applyJobValidators(manager);
        }

    }

以上功能会出现以下错误

“TypeError:对象不是querySu ...郁郁葱葱(http://localhost:52356/scripts/Q.js:106:17)”,消息:“对象不是函数”}消息:“对象不是函数”堆栈:( ...)获取堆栈:function(){[native code]} set stack:function(){[native code]} __ proto __:Error“

这导致我的应用程序无法正常工作,任何人都可以建议我在制作数据时犯下的小错误,这会迫使我的应用程序行为异常。

function getLookups() {

        var abc = EntityQuery.from('Lookups');

        return manager.executeQuery(abc)
            .fail(queryFailed1);
    }
    function queryFailed1()
    {
        //logError
    }

var getAllContactDetails = function(contactObservable,forceRemote){

        if (!forceRemote) {
            var s = getLocal('Contact_Details');
            if (s.length > 3) {
               // s.pop();
                contactObservable(s);
                debugger;
                return Q.resolve();
            }
        }
        var query = EntityQuery.from('Details');
        debugger;
        return manager.executeQuery(query)
                    .then(querySucceeded)
                    .fail(queryFailed2);

        function queryFailed2() {
         //   log
        }


        function querySucceeded(data) {

            contactObservable(data.results);

            toastr.success("Contacts loaded!")

            log('Retrieved [' + entityNames.detail + '] from remote data source',
                data, true);


        }
    };

0 个答案:

没有答案