2016-04-24 90 views
1

在我科尔多瓦的移动应用我的使用科尔多瓦 - 插件-MS-Azure的移动应用 继Agular的方法学,我创建一个工厂,创建WindowsAzurethe客户端:上AngularJS科尔多瓦应用程序中使用WindowsAzure.MobileServiceClient

var client = new WindowsAzure.MobileServiceClient('https://XXX.azurewebsites.net');

当应用程序在移动设备上启动时,我得到:“ReferenceError:WindowsAzure未定义”。

关于纹波它的工作正常(没有错误) 如果我推迟了工厂,并且只在实际需要时创建客户端,那也没有问题。

那么工厂在插件创建之前运行? 什么是最好/推荐的方法使用?

回答

1

有两种使用HTML/JS SDK的方法 - 一种是通过npmjs.org包(搜索azure-mobile-apps-client) - 如果您使用Browserify或Webpack打包应用。另一个是你引用的Apache Cordova插件。两者都具有相同的代码 - 一个注册全局,而另一个是UMD包,可以与require.js或commonjs系统一起使用。重要的区别是插件在deviceReady事件触发之前不可用。

如果插件在仿真器中不可用,但在Ripple中可用,则几乎总是因为插件在deviceReady之前被访问。纹波比仿真器或真实设备更早加载插件。

+0

所以你在说什么,如果我使用插件,我不能使用依赖注入? – webmobileDev

+0

只需使用npm包而不是Cordova插件。它应该工作得很好。有关npm软件包的文档,请访问:https://azure.microsoft.com/zh-CN/documentation/articles/app-service-mobile-html-how-to-use-client-library/ –