svelte render
1.0.0
友好的jamstack专注于Svelte应用程序的构建工具
我创建了这个实用程序,以为我的Svelte项目构建脚手架配置。因为我专注于可以通过Netlify部署的现代静态站点和客户端应用程序,所以Sapper包括许多我不需要的服务器端开发的基础架构。 Svelte套件的下一代替代品可以替换,但在不久的将来可能还没有准备好生产,因此,我将维护此CLI工具,直到我进行了可靠的替代品。
以下是svelte-render
添加的一些功能,在起动卷卷配置之上:
require()
! npm i @metamodern/svelte-render
CLI脚本仅作为ES模块发布。最小node.js版本为14(截至发布日期截止日期最新)。
npx svelte-render [context] [--key = value]
# default to process.cwd() as context
cd project
npx svelte-render [--key = value]
# skip production optimizations
npx svelte-render --development
# just output HTML from the entry file
npx svelte-render --client=0 --noCss
# specify a custom directory structure
npx svelte-render --src=. --dist=public
# specify the path to your config file
# ** if not at ./render.config.js **
npx svelte-render --configFile=./config/svelte-render.js
可以使用配置文件指定选项。该文件应使用ES模块导入/导出语法。它的默认导出应是一个函数,该函数将包含命令行选项的对象作为其灌溉,并返回一个对象指定其他选项以传递到渲染函数。
预计将在./render.config.js
(相对于context
)找到该配置文件,但是可以从命令行指定自定义路径,如上所示。
有关所有可能传递给渲染函数的所有选项的列表,请参见下文。
JavaScript API仅作为ES模块发布。不支持commonjs require()
。
模块的默认导出是具有以下参数的函数:
async function ( context : string , {
src = 'src' ,
assets = 'assets' ,
dist = 'dist' ,
entry = 'index.svelte' ,
client = 'client.js' ,
noCss = false ,
development = false ,
transpile = ! development ,
rollupInputPlugins = [ ] ,
rollupInputOptions = { } ,
compilerOptions = { } ,
sveltePreprocess = { } ,
svelteOptions = { } ,
terserOptions = { } ,
browsers = 'defaults' ,
babelPresets = [ [ '@babel/preset-env' , {
targets : browsers ,
corejs : 3 ,
useBuiltIns : 'usage' ,
} ] ] ,
babelPlugins = [ ] ,
babelOptions = { } ,
before ,
onRender ,
after ,
} = { } ) : Promise < number > // returns 0 on success
注意:仅在使用JavaScript API时需要context
参数。使用CLI脚本时, context
默认为process.cwd()
。
以下选项可以指定为文件名或路径,并将相对于context
解决。
entry
和client
端源文件的父目录dist
的静态资产目录development
标志打开时忽略)client
设置为false
,并且不使用development
标志) <style>
块生成的CSSdevelopment
标志) rollup-plugin-svelte
(在compilerOptions
键下)rollup-plugin-svelte
预处理功能(在preprocess
密钥下)rollup-plugin-svelte
其他选项rollup-plugin-terser
的选项注意:当transpile
设置为false
时,这些选项将被忽略
渲染钩是与主渲染函数同时执行的函数。每个功能将通过已解决的context
和完整选项对象传递。支持异步功能。
©2020 Daniel C. Narey
ISC许可证