typescript - Svelte 在汇总中看到一个令人困惑的错误
问题描述
您好,我正在使用汇总生成器并尝试使用我的应用程序实现打字稿,此时我收到一个非常普遍的错误index.mjs:266 Uncaught ReferenceError: core is not defined
。这并没有给我指明任何方向。我仔细检查了我的汇总和 tsconfig,但没有取得任何进展。有谁能够帮我?
到目前为止,这是我的代码
rollup.config.js
import svelte from 'rollup-plugin-svelte';
import commonjs from '@rollup/plugin-commonjs';
import resolve from '@rollup/plugin-node-resolve';
import livereload from 'rollup-plugin-livereload';
import { terser } from 'rollup-plugin-terser';
import typescript from '@rollup/plugin-typescript';
import css from 'rollup-plugin-css-only';
import sveltePreprocess from 'svelte-preprocess';
const production = !process.env.ROLLUP_WATCH;
function serve() {
let server;
function toExit() {
if (server) server.kill(0);
}
return {
writeBundle() {
if (server) return;
server = require('child_process').spawn('npm', ['run', 'start', '--', '--dev'], {
stdio: ['ignore', 'inherit', 'inherit'],
shell: true,
});
process.on('SIGTERM', toExit);
process.on('exit', toExit);
},
};
}
export default {
input: 'src/main.js',
output: {
sourcemap: true,
format: 'iife',
name: 'app',
file: 'public/build/bundle.js',
},
plugins: [
svelte({
compilerOptions: {
// enable run-time checks when not in production
dev: !production,
},
preprocess: sveltePreprocess({
sourceMap: !production,
postcss: {
plugins: [require('tailwindcss'), require('autoprefixer')],
},
}),
extensions: ['.html', '.svelte', '.ts'],
}),
// we'll extract any component CSS out into
// a separate file - better for performance
css({ output: 'bundle.css' }),
// If you have external dependencies installed from
// npm, you'll most likely need these plugins. In
// some cases you'll need additional configuration -
// consult the documentation for details:
// https://github.com/rollup/plugins/tree/master/packages/commonjs
resolve({
browser: true,
dedupe: ['svelte'],
}),
commonjs({
include: 'node_modules/**'
}),
typescript({
sourceMap: !production,
rootDir: "./src",
}),
// In dev mode, call `npm run start` once
// the bundle has been generated
!production && serve(),
// Watch the `public` directory and refresh the
// browser on changes when not in production
!production && livereload('public'),
// If we're building for production (npm run build
// instead of npm run dev), minify
production && terser(),
],
watch: {
clearScreen: false,
},
};
tsconfig.json
"extends": "@tsconfig/svelte/tsconfig.json",
"include": ["src/**/*", "/node_modules"],
"exclude": ["node_modules/*", "public/*"],
"compilerOptions": {
"target": "es2017",
"importsNotUsedAsValues": "error",
"isolatedModules": true,
"sourceMap": true,
"strict": false,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
}
}
解决方案
推荐阅读
- google-maps - 检查字符串地址 X 是否在字符串地址 Y 内,使用 REST API 复杂多边形
- reactjs - 不正确的 JSS 样式顺序 - Material-UI
- php - Laravel 列表中的海量数据
- javascript - “this”在 Visual Studio 2017 的 Razor 视图中呈现为普通文本
- postgresql - 相关子查询与不可变函数
- sql - 带有计数条件的 SQL 查询
- javascript - 图像 src 对数组进行排序
- css - 我可以在 html xaringan R 中居中和居中一个数字吗
- ruby-on-rails - Rails:是否可以在 Rails 中将 PostgreSQL 数据库条目分配给 Vue?
- angularjs - 如何在没有 .then() 的情况下使用 .finally()?