2016-11-01 3 views
0

У меня есть угловой stripe.js в моем проекте (не уверен, куда он пришел от кого-то включил) отрывок из которых находится нижемодуль угловой полоса отсутствует или полоса должна быть доступна как window.Stripe

var Stripe = window.Stripe 

module.exports = angular.module('angular-stripe', [ 
    _dereq_('angular-assert-q-constructor') 
]) 
.constant('Stripe', Stripe) 
.provider('stripe', provider) 
.name 

, когда я включил этот файл я получаю ошибку ниже

Error: Stripe must be available as window.Stripe 

Скачал угловую-полосу в НОМ, который дал мне структуру, как этот enter image description here

src/index.js имеет один и тот же код в нем, как указано выше, и включает в себя другие файлы в источнике с require и когда я включаю его, я получаю эту ошибку

Error: [$injector:nomod] Module 'angular-stripe' is not available! 

Может кто-нибудь увидеть, что я делаю неправильно или знать, как правильно включают angular-stripe?

Update я в том числе один из следующих сценариев в моем HTML, как этот

<!--    <script src="assets/libs/stripe/angular-stripe.js"></script> --> 
     <script src="assets/libs/stripe/index.js"></script> 

я получаю сообщение об ошибке для window.Stripe если я включаю угловой stripe.js и ошибки для модуль не доступен, если я включаю index.js. Когда я загружаю страницу, я вижу один или другой инструмент для Chrome-инструментов. Мы используем grunt, но в нашем файле grunt мы не включаем файлы с node_modules, мы просто используем его для uglify и минимизации наших статических ресурсов.

Update Когда я включаю его, как этот

<script type="text/javascript" src="https://js.stripe.com/v2/"></script> 
     <script src="assets/libs/stripe/angular-stripe.js"></script> 

он работает, но когда я minifiy это я получаю ошибку ниже

Error: [$injector:nomod] Module 'angular-stripe' is not available! 

Я думаю, потому что это не делает, что звоните в https://js.stripe.com(its не в сетевых данных в хром-инструментах для разработчиков). Если загрузить содержимое https://js.stripe.com/v2/ в файл stripe-v2.js, а затем включить его, как этот

<script src="assets/libs/stripe/stripe-v2.js"></script> 
     <script src="assets/libs/stripe/angular-stripe.js"></script> 

он работает, прежде чем минификация, но терпит неудачу с таким же модулем не доступная ошибкой, когда я пытаюсь использовать Минимизированный JS.

ответ

0

Вам не хватает ссылки на angular-stripe. Сценарий должен быть подготовлен в HTML до того, как будет создан ваш сценарий.

<script src="scripts/angular-stripe.min.js"> 
<!-- source your script after this --> 

Кроме того, в зависимости от того, используете ли вы систему сборки (пехотинец, глоток, WebPack и т.д.), что путь будет включен в сборку вместо этого, либо из bower_components или node_modules путей.

gulp.src([ 
    'node_modules/angular-stripe/angular-stripe.js' 
]) 

Обратите внимание, что оба эти примера являются примерами, пути могут отличаться, но они должны быть установлены в соответствии с вашей средой. Без него сценарий angular-stripe не будет загружен, и ваш скрипт не будет работать.