来自Microsoft Office加载项taskpane.js的MySQL驱动程序模块的空引用

保罗·卡普兰

我正在尝试从Microsoft Office加载项访问MySQL数据库。我可以使该加载项在MsWord中工作,但是当我尝试使用MySQL Node.js驱动程序时,“ mysql”对象在运行时显示为null。

我在taskpane.js的开头添加了此代码:

import { mysql } from 'mysql';

did the following:
npm install mysql
npm audit fix
npm install @types/mysql
added the following to webpack.config.js "target: 'node',"

稍后在代码中,当我运行它时,它将触发并显示“ mysql undefined”:

 if (!mysql) {
  context.document.body.insertParagraph("mysql undefined", Word.InsertLocation.end);

我想念什么或做错什么?

蓝番茄

这是行不通的,因为您尝试mysql在前端中使用服务器库虽然两者都是用javascript编写的,但是它们所使用的环境却截然不同。

下图非常简洁地解释了该问题-我建议您从此网站中检出。

在此处输入图片说明

本质上,对于react库,您使用的是node.js作为构建助手,打包运行程序等。-这意味着最终结果应该只是一个javascript文件。main.123456.js如果您使用的是默认版本,则类似该文件在浏览器上下文中将是有意义的,因为这里将包含DOM项,即HTML特定的内容。

对于MySQL库-您将node.js用作HTTP服务器。那将无法访问DOM,但是由于它是作为一个进程运行的,因此它将为您提供不同的功能,从而使您的MySQL连接正常工作。

office.js在浏览器上下文中运行,因此与react有关的一切基本上都在您的浏览器中运行。这意味着下面的行属于您的应用程序:

context.document.body.insertParagraph("mysql undefined", Word.InsertLocation.end);

不过,来自MySQL的数据需要来自服务器。您仍然可以在node.js中设置该服务器-这样,您就可以使用从NPM导入的MySQL库。本教程将引导您逐步设置一个非常简单的服务器。

这意味着这条线

import { mysql } from 'mysql';

sql连接属于服务器端。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何编写Linux驱动程序模块调用/使用其他驱动程序模块?

Microsoft Access驱动程序:由于系统错误1114无法加载指定的驱动程序

使用Office JS API的Office VSTO加载项与Office加载项

从Word Web加载项(Office.Js)进行的API调用不起作用:CORS问题?

Office JS-刷新加载项版本

Office.js内容加载项插入行为

Wildfly无法为Oracle驱动程序加载模块

Microsoft对发布到Office加载项存储中的加载项托管什么?

我的第一个Excel Office JS加载项ActiveX问题

新的Microsoft Word Office加载项在功能区中未显示加载项按钮

分发Microsoft.Office.Tools Dll和Office加载项

Office JS加载项

通过Office加载项(Word JS)使用Microsoft Graph访问SharePoint

Microsoft Office.js Excel加载项-使用javascript / react检索工作表/工作簿的唯一ID

将SSO与Office.js Excel加载项结合使用-如何设置令牌的受众群体?

离线模式下的office-js加载项

您可以在Office加载项中引用工作表代号吗?

office.js中开发的Microsoft Word加载项可以支持Mobile Word应用程序吗?(我知道Outlook加载项支持移动设备)

Microsoft O365缓存的加载项-Office.context.mailbox.item为null

具有要求Excel JS API 1.9的方法的Office加载项在Office 2016上运行。这怎么可能?

无法调试Word加载项项目,未安装所需的Microsoft Office版本

Microsoft PHP SQL Server驱动程序无法正常工作,无法加载模块

无法在Windows XP中加载文件或程序集microsoft.office.interop.excel版本15.0.0.0

linux如何为内置驱动程序模块加载固件

VSTO Microsoft Office Outlook 2013加载项不断禁用功能区

SQL Server的Microsoft ODBC驱动程序11:无法加载指定的驱动程序(msodbcsql11.dll)

如何在连接的USB设备上加载我的自定义驱动程序模块?

如何知道驱动程序模块的代码流?

无法从Microsoft Office JavaScript加载项向Trello进行身份验证