在 sapper/svelt 中是否有组件的快捷方式
In sapper/svelt is there a shortcut to components
在 nuxts/vue 中有一个别名 @ 和 ~ 表示应用程序的根目录。 sapper/svelte 中是否有类似于 /very/deep/page/1/2/3/4 之类的深层路线的东西我不必做这样的事情:
import Head from '../../../../../../../../components/Thingy.svelte'
如果你正在使用rollup,你可以使用@rollup/plugin-alias获取它。
例如,在您的 rollup.config.js
:
// ...
import alias from '@rollup/plugin-alias';
import path from 'path';
// ...
export default {
input: 'src/main.js',
// ...
plugins: [
// ...
alias({
resolve: ['.jsx', '.js', '.svelte'], // optional, by default this will just look for .js files or folders
entries: [
{ find: '@', replacement: path.resolve(__dirname, 'src') },
]
}),
// ...
],
// ...
};
然后 @
将成为您顶层下 src
目录的别名。
如果您改用 webpack,则可以使用 resolve.alias 配置 属性。例如,客栈你的 webpack.config.js
:
// ...
import path from 'path';
// ...
module.exports = {
// ...
resolve: {
alias: {
'@': path.resolve(__dirname, 'src')
}
}
// ...
};
您可以将它们放在 src/node_modules/components
的目录中,然后您就可以像 import Foo from 'components/Foo.svelte'
一样导入它们。只要确保该目录没有被 gitignored!
在 nuxts/vue 中有一个别名 @ 和 ~ 表示应用程序的根目录。 sapper/svelte 中是否有类似于 /very/deep/page/1/2/3/4 之类的深层路线的东西我不必做这样的事情:
import Head from '../../../../../../../../components/Thingy.svelte'
如果你正在使用rollup,你可以使用@rollup/plugin-alias获取它。
例如,在您的 rollup.config.js
:
// ...
import alias from '@rollup/plugin-alias';
import path from 'path';
// ...
export default {
input: 'src/main.js',
// ...
plugins: [
// ...
alias({
resolve: ['.jsx', '.js', '.svelte'], // optional, by default this will just look for .js files or folders
entries: [
{ find: '@', replacement: path.resolve(__dirname, 'src') },
]
}),
// ...
],
// ...
};
然后 @
将成为您顶层下 src
目录的别名。
如果您改用 webpack,则可以使用 resolve.alias 配置 属性。例如,客栈你的 webpack.config.js
:
// ...
import path from 'path';
// ...
module.exports = {
// ...
resolve: {
alias: {
'@': path.resolve(__dirname, 'src')
}
}
// ...
};
您可以将它们放在 src/node_modules/components
的目录中,然后您就可以像 import Foo from 'components/Foo.svelte'
一样导入它们。只要确保该目录没有被 gitignored!