يعمل البناء العادي لمرة واحدة بشكل جيد. ومع ذلك ، عند استخدام rollup -w
، يبدو أن rpt2 يواجه مشكلة في العثور على ملفات المصدر إذا قمت بتحرير أحد تبعيات الوحدة النمطية الأعمق في إحدى الحزم الأخرى.
هذا مع Lerna monorepo إعداد ارتباطات رمزية لتتبعيات in-repo.
اختبار الريبو: https://github.com/jrburke/jr-monorepo-rpt2
لا أريد استخدام preserveSymlinks
لأنه في مشروعي الحقيقي ، ينتج عنه نسخ مكررة من الوحدات النمطية في المشروع النهائي المبني ، نظرًا لأن الحزم المتعددة في الريبو تشترك في التبعيات المشتركة. لقد جربت إصدارًا باستخدام preserveSymlinks
، ولذا ، كحل أخير ، يمكنني تكوين إعداد مطور يستخدم preserveSymlinks
، ولكن يعمل بشكل مستقل / لأول مرة بدونه ، وأود الاحتفاظ به إعداد الساعة هو نفسه الذي يبني العادي.
التفاصيل المراد إعادة إنتاجها في المثال أعلاه الريبو.
import commonjs from '@rollup/plugin-commonjs';
import resolve from '@rollup/plugin-node-resolve';
import typescript from 'rollup-plugin-typescript2';
export default {
input: 'src/index.ts',
output: {
file: 'dist/jr-player.js',
format: 'iife',
name: 'jrPlayer',
exports: 'named'
},
watch: {
include: ['src/**', '../jr-lib/src/**', '../jr-auth/src/**']
},
plugins: [
typescript({
include: ['src/**/*.ts+(|x)', '../jr-lib/**/*.ts+(|x)', '../jr-auth/**/*.ts+(|x)'],
verbosity: 3
}),
resolve(),
commonjs()
]
};
أعلى مستوى tsconfig.json:
{
"compilerOptions": {
"moduleResolution": "node",
"module": "es2015",
"lib": [
"es2015",
"es2016",
"es2017",
"dom"
],
"strict": true,
"sourceMap": true,
"declaration": true,
"allowSyntheticDefaultImports": true,
"downlevelIteration": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"noImplicitAny": false,
"esModuleInterop": true,
"removeComments": true,
"resolveJsonModule": true,
"skipLibCheck": true
}
}
packages/jr-player/tsconfig.json
:
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"target": "es5",
"declarationDir": "lib",
"outDir": "lib"
},
"include": ["."]
}
لا أعتقد أنه ذو صلة ، لكنه موجود في الريبو التجريبي.
مرفق ، ولكن أيضًا في اختبار الريبو عند verbose-error.txt
:
قد تكون مرتبطة بالرقم 188
حل آخر هو تعطيل التحقق من الكتابة باستخدام check: false
، وهذا بالطبع يزيل غالبية الوظائف ...
لدي مشكلة في الجمع بين rollup-plugin-typescript2
و rollup-plugin-postcss
. عندما أقوم باستيراد ملف _css_ (على سبيل المثال import * as style from ./mystyle.css
) وأقوم بتمكين علامة _watch_ ، فإنه يعطيني نفس الخطأ.
سأحاول تصحيح الأخطاء أكثر قليلاً ، ولكن بالفعل check: false
أصلح المشكلة.