如何在不返回变量的情况下声明变量?

时间:2019-07-04 17:37:30

标签: javascript html vue.js

我正在尝试通过事件将函数发送到父组件,但是当我尝试声明将在'data(){return:}'中存储函数的变量时,函数将在变量接收它。我需要找到一个声明变量的地方,而不自动执行其中的函数。

string row = string.Empty;
StringBuilder text = new StringBuilder();
string filePath = @"C:\MyPdf\New1Result.pdf";
using (PdfReader reader = new PdfReader(filePath)) {
  for (int i = 1; i <= reader.NumberOfPages; i++) {
    row = PdfTextExtractor.GetTextFromPage(reader, i); 
    text.Append(PdfTextExtractor.GetTextFromPage(reader, i));
  }
}

1 个答案:

答案 0 :(得分:1)

我注意到的第一个奇怪的地方是

return {
    submit_method: { type: Function }
}

道具支持类型,data不支持。您在这里要做的就是将对象{type: Function}分配给submit_method

然后是这个

this.submit_method = this.exportFile()

这将立即调用该方法。我想你的意思是这样:

this.submit_method = this.exportFile

然后我们得到了:

this.$emit('export-ombudsman', submit_method)

在模板中,您需要删除this.才能访问成员,但不能在JavaScript中完成。必须是:

this.$emit('export-ombudsman', this.submit_method)

所有这些都假定submit_method是动态的。如果不是,那么您可以直接通过exportFile

this.$emit('export-ombudsman', this.exportFile)

即使您确实需要使函数动态化,也不需要在submit_method中声明data,除非您需要它是反应性的。即使它不在this中,您仍然可以将其保存到data