我的任务是提供电子表格中的数据。有奖品的职位。我想使用html模板和HtmlService将其提供给用户
我已经准备了html模板,其中包含要提供数据的位置。 我编写了脚本,以收集来自googleSheet的数据并存储在对象中。
google apps env中的js:
var htmlOutput = HtmlService
.createHtmlOutputFromFile('kosztorys.html')
.setWidth(500)
.setHeight(550)
SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'Some title');
我现在很困惑,不知道该怎么办。我已经尝试了一些在互联网上找到的解决方案,但是它不起作用。如何将数据放入模板?
答案 0 :(得分:0)
我的猜测是您需要这样的东西:
class MyFragment : Fragment() {
private var item: Item? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
item = arguments?.getParcelable(BUNLDE_ITEM)
}
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
val root: View = inflater.inflate(R.layout.my_fragment, container, false)
val textViewTitle = root.findViewById<View>(R.id.textViewTitle) as TextView
item?.let {
textViewTitle.text = "text"
}
return root
}
companion object {
private const val BUNLDE_ITEM = "item"
fun newInstance(item: Item) = MyFragment().apply {
arguments = Bundle().apply {
putParcelable(BUNLDE_ITEM, item)
}
}
}
}
通常,您不需要为文件名提供var htmlOutput = HtmlService
.createHtmlOutputFromFile('kosztorys')
.evaluate()
.setWidth(500)
.setHeight(550)
SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'Some title');
,因为Google脚本会为您添加文件名。因此,在您的情况下,程序正在寻找名为.html
的文件。
Here's an example of a templated HTML webapp
下面是一个示例,显示了如何将电子表格的内容添加到对话框中。
kosxtorys.html.html
电子表格的外观如下:
这是对话框的样子:
有许多方法可以从电子表格输出数据,这在很大程度上取决于您的数据。但这只是众多之一。