Javascript 在苗条中使用组件的功能
我在svelte上有我的CodeMirror组件,我需要使用一些函数(在组件中声明),其中我使用CodeMirror来更改值。例如:Javascript 在苗条中使用组件的功能,javascript,svelte,sapper,Javascript,Svelte,Sapper,我在svelte上有我的CodeMirror组件,我需要使用一些函数(在组件中声明),其中我使用CodeMirror来更改值。例如: export function update(new_value) { value = new_value; if (editor) { const { left, top } = editor.getScrollInfo(); editor.setValue((value = new_value)); editor.scrollTo(left,
export function update(new_value) {
value = new_value;
if (editor) {
const { left, top } = editor.getScrollInfo();
editor.setValue((value = new_value));
editor.scrollTo(left, top);
}
}
在声明CodeMirror的地方如何导入和使用它?我试着用
import CodeMirror, {update} from '../../../../components/CodeMirror.svelte';
但是不起作用如果您正在导出函数,您应该能够使用调用组件实例上的函数。您可以创建一个变量,可以在
bind:this
语句中引用,然后可以针对该组件调用导出的函数update
:
let codeMirrorComponent;
function someHandler() {
// may want to check `if (codeMirrorComponent && codeMirrorComponent.update)` to ensure function is available to call
codeMirrorComponent.update('someValue');
}
<CodeMirror bind:this={codeMirrorComponent} />
让codeMirrorComponent;
函数someHandler(){
//可能需要检查'if(codeMirrorComponent&&codeMirrorComponent.update)`以确保函数可以调用
codeMirrorComponent.update('someValue');
}
这就是行动
希望这有帮助 如果您正在导出函数,您应该能够使用调用组件实例上的函数。您可以创建一个变量,可以在
bind:this
语句中引用,然后可以针对该组件调用导出的函数update
:
let codeMirrorComponent;
function someHandler() {
// may want to check `if (codeMirrorComponent && codeMirrorComponent.update)` to ensure function is available to call
codeMirrorComponent.update('someValue');
}
<CodeMirror bind:this={codeMirrorComponent} />
让codeMirrorComponent;
函数someHandler(){
//可能需要检查'if(codeMirrorComponent&&codeMirrorComponent.update)`以确保函数可以调用
codeMirrorComponent.update('someValue');
}
这就是行动
希望这有帮助 我明白一切,我犯了错误,谢谢!我明白一切,我犯了错误,谢谢!