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許可證