Rrule: الاستيراد في ملف منسوب

تم إنشاؤها على ٤ يوليو ٢٠١٦  ·  9تعليقات  ·  مصدر: jakubroztocil/rrule

مرحبا شباب،
كنت أتساءل كيف يمكنني استيراد ملف rrule.js من الكتابة المطبوعة:
import 'rrule';
لا يبدو أنه يعمل لأن module.exports تم تقييمه على أنه صحيح ، لذلك حتى النطاق العام لم يتم ملؤه.
عندما أجرب أي نوع آخر من الاستيراد مثل:
import * as rrule from 'rrule';
أحصل على هذا عند التجميع:
Error TS2307: Cannot find module 'rrule'.

التعليق الأكثر فائدة

تشغيل npm install @types/rrule حل المشكلة بالنسبة لي. ثم تمكنت من استيراد مثل هذا
import { RRule, RRuleSet } from "rrule";

ال 9 كومينتر

لدي نفس المشكلة. هل وجدت حلاً؟

انظر هذا المثال:

http://jqfaq.com/how-to-use-external-js-in-typescript/

تمكنت من استخدام RRule في ملف ts الخاص بي مثل ذلك (بعد تضمين rrule.js في صفحة index.html الخاصة بي):

// ملف form.ts
تعلن var RRule: أي ؛

وحدة myapp.controllers {

class myClass {
    constructor() {
        var rule = RRule.fromString('FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13');
        console.log(rule.toText());
    }
}

}

أمل أن هذا يساعد شخصاما.

ما أفعله في هذه الحالات هو تحديد الكتابة.
أضف ملفًا إلى الكتابة -> rrule.d.ts

محتوى ملف rrule.d.ts:

declare var RRule: any; declare var RRuleSet: any; declare var rrulestr: any;

يمكنك تمديد ممتلكاتهم هناك إذا كنت تريد.

ثم اربط rrule.d.ts بـ index.d.ts لكل مثال (أقوم عادةً بتجميع كل d.ts في ملف واحد للإشارة إليها هناك)

index.d.ts:
/// <reference path="globals/rrule/rrule.d.ts" />

بعد ذلك يمكنك استخدام

RRule.fromString('FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13');

بدون تحديد
declare var RRule: any;
في كل مكان مرة أخرى.

تحياتي الحارة!

تشغيل npm install @types/rrule حل المشكلة بالنسبة لي. ثم تمكنت من استيراد مثل هذا
import { RRule, RRuleSet } from "rrule";

@ dennis2k وكيف حللت الأمر باستخدام rrulestr؟

uncledent لم أتمكن من هذا إلا باستخدام يتطلب

var rrulestr = require('rrule').rrulestr

@ dennis2k شكرًا لك على إجابتك ، لكن لا يمكن استخدام هذا في Angular4 :(

يمكنني القيام بهذه الطريقة في Angular2 / 4 ، ليست جميلة ، لكنها تعمل:
declare function require(name:string); var rrulestr = require('rrule').rrulestr;

أعتقد أن هذه القضية قد ماتت. يرجى التحديث إذا كانت هناك حاجة إلى مزيد من الدعم!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

marcoancona picture marcoancona  ·  22تعليقات

mapidemic picture mapidemic  ·  7تعليقات

jimmywarting picture jimmywarting  ·  9تعليقات

shavenwalrus picture shavenwalrus  ·  7تعليقات

grigio picture grigio  ·  7تعليقات