Ecmascript 6 如何在svelte中公开可以接受参数进行渲染的函数?

Ecmascript 6 如何在svelte中公开可以接受参数进行渲染的函数?,ecmascript-6,svelte,svelte-3,Ecmascript 6,Svelte,Svelte 3,我是svelte的新手,对于我的用例,我想将svelte应用程序导出为bundle.js,它公开了一个函数,比如说startApp(positionInject,appConfiguration),可以接受两个参数(positionInject是应用程序注入位置,例如:.app,appConfiguration是要启动的应用程序的初始配置),基于这些参数,svelte app start呈现 我想知道,这在苗条的可能吗 感谢您的帮助。每个Svelte组件都将目标元素和道具作为构造函数参数。您可以

我是svelte的新手,对于我的用例,我想将svelte应用程序导出为
bundle.js
,它公开了一个函数,比如说
startApp(positionInject,appConfiguration)
,可以接受两个参数(
positionInject
是应用程序注入位置,例如:.app,
appConfiguration
是要启动的应用程序的初始配置),基于这些参数,svelte app start呈现

我想知道,这在苗条的可能吗


感谢您的帮助。

每个Svelte组件都将
目标
元素和
道具
作为构造函数参数。您可以将构造封装在函数中:

从“/App.svelte”导入应用程序;
导出功能STARTAP(选择器、道具){
const target=document.querySelector(选择器)
返回新应用程序({
目标,,
道具
})
}
你可以这样称呼它:

从“/bundle.js”导入{startApp}
startApp(“.my app”,{config:…})

当多次调用
startApp('.app',{config:..})
时,它会创建另一个app实例,如果您能再次在调用
startApp
时阐明如何替换现有app,那将是一件非常棒的事情,这要感谢以下几种方法:1)保持元素到组件的
映射
,以便知道它是否已加载2)加载后在DOM节点上设置一个标志:
component=new App(…);target.svelteLoaded=true
,然后检查是否设置了target.svelteLoaded。谢谢,哦,我明白了,我需要用新应用替换现有应用,而不是检查并停止加载新应用。我明白了。在这种情况下,您可以使用
$set()
更新现有已安装应用程序的道具。请看:上的教程非常好。我正在制作一个视频课程,但还没有链接