使用数据属性加载Meteor脚本

时间:2015-04-18 01:39:47

标签: cordova meteor ionic meteoric

我有这个

<script 
src="https://cdn.plaid.com/connect/stable/connect-initialize.js" 
data-client-name="Client Name" 
data-form-id="plaidForm" 
data-key="public_key" 
data-product="auth" 
data-env="tartan" 
data-webhook="/webhook" 
/>

如何在一个Meteor模板中将其转换为可运行的跨浏览器脚本?

我通过在template.js渲染功能中加载它来在Chrome中工作,但是当我使用Ionic时,它不会在移动设备上加载。我不知道为什么,但我试图先找到最简单的答案(也许Ionic不能识别我的javascript代码)...

感谢任何帮助。

$(document).ready(function() {
        var script = document.createElement('script');
        script.async = "async";
        script.src = "https://cdn.plaid.com/connect/stable/connect-initialize.js";
        script.setAttribute("data-client-name", "Client Name");
        script.setAttribute("data-form-id", "plaidForm");
        script.setAttribute("data-key", Meteor.settings.public.plaid.public_key);
        script.setAttribute("data-product", "auth");
        script.setAttribute("data-env", "tartan");
        script.setAttribute("data-webhook", "https://e39f6d752a20d470.a.passageway.io/hookthe/plaid");
        $("head").append(script);
    });

以下是我在Android模拟器上运行此浏览器时检查的行。

Failed to load resource: the server responded with a status of 404 (Not Found)
https://cdn.plaid.com/connect/stable/connect-initialize.js?_=1429320699573

2 个答案:

答案 0 :(得分:1)

我意识到这个答案有点晚了,但Link应该可以毫不费力地使用Meteor。 404也很奇怪,因为我可以直接在浏览器中访问该URL。

你有没有能够解决这个问题?如果您仍然遇到Meteor问题,我建议您尝试不依赖于&#34;数据的链接custom initializers - &#34;属性。

答案 1 :(得分:0)

链接在您的浏览器中工作很奇怪,但在您的Ionic应用程序中却没有。我上周用Link构建了一个Ionic应用程序,它没有问题,所以我认为你的问题出现了问题。

在您的Ionic应用程序中:您使用的是AngularJS + UIrouter吗?我认为可能会发生的是,您在<script>脚本标记内加载了链接ng-template标记 - 这不起作用(脚本内部的脚本永远不会被执行)。我可能会建议您在Angular Controller中尝试使用custom initializer来避免此问题。

plaidApp.controller('BillsCtrl', function($scope, $http) {

 var linkHandler = Plaid.create({
   env: 'tartan',
   clientName: 'Client Name',
   key: 'test_key',
   product: 'auth',
   onSuccess: handleOnSuccess,
 });

 function handleOnSuccess(token) {
   $http.post('/authenticate/', {
     public_token: token
   }).success(function(res) {
   }).error(function(err) {
   })
 }

});

index.html文件中的某处包含格子标记脚本标记

<script src="https://cdn.plaid.com/link/stable/link-initialize.js"></script>

如果这不起作用,您可以create a new issue in our github page以便我们更好地回复您的问题。