我是svelte的新手,对于我的用例,我想将svelte应用程序导出为bundle.js
,它公开了一个可以接受2个参数的函数startApp(positionInject, appConfiguration)
({{ 1}}是应用程序注入位置,例如:.app,positionInject
是要启动的应用程序的初始配置),基于那些参数,以简化应用程序启动渲染。
我想知道,这真的可能吗?
感谢任何帮助。
答案 0 :(得分:1)
每个Svelte组件都使用一个target
元素和一个props
作为构造函数参数。您可以将构造包装成一个函数:
import App from './App.svelte';
export function startApp(selector, props) {
const target = document.querySelector(selector)
return new App({
target,
props
})
}
您可以这样称呼它:
import {startApp} from "./bundle.js"
startApp(".my-app", {config: ...})