构建你的第一个Sell应用程序-第2部分:设计用户界面
本教程是构建Zendesk Sell应用程序系列的第二部分:亚博
- 第1部分:打基础一个>李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">第二部分-设计用户界面-你在这里李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">第3部分:创建和插入模板一个>李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">第4部分:获取数据一个>李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">第5部分:在Zendesk Sell中安装应用程序亚博一个>李>
在前面的教程中,您安装了ZCLI并为名为Related Leads的应用程序创建了启动文件。在本教程中,您将使用应用程序的用户界面(UI)。本教程涵盖以下任务:
- 在Sell中设置应用程序的位置一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">查看主HTML文件一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">测试应用程序一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">清除默认代码一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">添加页脚一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">添加样式一个>李><李data-garden-id="typography.ordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-GvhzO jwhztf ftmEEP">改变logo一个>李>
在Sell中设置应用程序的位置
你可以运行一个应用程序<一个href="https://developer.zendesk.com/api-reference/apps/apps-sell-api/introduction/">不同的位置一个>的销售界面。这个应用程序将显示在交易卡的边栏:
在Sell中设置应用程序位置
在文本编辑器中,打开名为manifest.json在您的应用程序文件夹(/ related_leads manifest.json).
替换默认值
位置
具有以下属性:“位置”:{
“卖出”:{
“deal_card”:“资产/ iframe.html”
}
},
保存manifest.json.
查看主HTML文件
的iframe中显示deal_card
您指定的位置。
在前面的教程中,ZCLI创建了一个iframe.html文件在你的应用程序资产文件夹(related_leads /资产/ iframe.html).打开iframe.html在文本编辑器中文件。
为了与Zendesk Apps框架(ZAF亚博)交互,HTML文件在一个脚本标记中导入ZAF SDK库:
<脚本src="https://static.zdassets.com/亚博zendesk_app_framework_sdk/2.0/zaf_sdk.min.js">脚本>
导入SDK后,您可以使用ZAFClient.init ()
方法创建一个ZAF API客户端:
var客户端=ZAFClient.初始化();
ZAF客户端提供了应用程序和主机应用程序(如Zendesk Sell)之间的接口。亚博客户端提供<一个href="https://developer.zendesk.com/api-reference/apps/apps-core-api/client_api/">方法一个>你可以用来与ZAF交互。例如,starter文件包括:
客户端.调用(“调整”,{宽度:“100%”,高度:“200 px”});
测试应用程序
您的应用程序还没有做很多事情,但是您已经可以使用ZCLI运行它了。经常运行应用程序来测试最新的更改。
提示:在测试和开发应用程序时,使用浏览器中的私有窗口或隐身模式。您的浏览器可能会缓存应用程序使用的某些文件。如果应用程序中的更改不起作用,则浏览器可能正在使用该文件的旧缓存版本。使用私人浏览,文件不会被缓存。
测试你的应用
在命令行界面中,导航到related_leads文件夹中。例如:
$cd项目/ related_leads
运行以下命令启动本地ZCLI web服务器:
$ zcli apps:服务器
过了一会儿,会出现一条状态消息,通知您服务器已经启动。
在您的浏览器的私人或隐身窗口,登录到销售。
进入交易页面,从列表中选择一个交易,打开交易卡。URL应该是这样的:
https://app.futuresimple.com/sales/deals/12345678
附加? zcli_apps = true到交易卡URL并按输入.URL应该是这样的:
https://app.futuresimple.com/sales/deals/12345678?zcli_apps=true
提示:将修改后的网址收藏起来,方便日后查阅。
在侧边栏中,应用程序显示了一个“Hello, World!”标题。这个标题是在应用程序的iframe.html文件。
如果你将应用程序的当前布局与之前的模型进行比较,仍然有一些更改要做:
- 清理默认代码。这包括替换“Hello, World!”标题、添加线索列表以及移动JavaScriptiframe.html转到另一个文件。李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">添加一个页脚,显示“报告错误”,并提供一个用户可以报告错误的网站链接。李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">添加样式来格式化应用程序的UI李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">替换标题中的默认logo李>
中的默认代码可以从清理开始iframe.html.
开放iframe.html文本编辑器中替换
< h2 >
标签,并附上以下HTML:<h2>新领导为该组织h2>
<ul>
<李><一个href=""目标="平等自愿">引领一个一个>李>
<李><一个href=""目标="平等自愿">引领两个一个>李>
ul>
目前,HTML包含占位符值。这些值与模型不匹配也没关系。您将在后面的教程中更新应用程序以使用实时数据。
创建一个名为main.js在资产文件夹中。亚博电脑端HTML、JavaScript、CSS和图像文件等资源必须位于资产文件夹中。
添加如下功能到main.js:
(函数(){
常量客户端=ZAFClient.初始化();
客户端.调用(“调整”,{宽度:“100%”,高度:“150 px”});
})();
的
(function(){…})();
语句定义一个匿名的自调用函数。该函数在文档加载到浏览器后运行。函数的两个语句类似于< >脚本
标签iframe.html.在iframe.html,删除以下内容
< >脚本
标签:<脚本>
//初始化app框架客户端。参见:
/ / https://developer亚博.zendesk.com/apps/docs/developer-guide/getting_started
var客户端=ZAFClient.初始化();
客户端.调用(“调整”,{宽度:“100%”,高度:“200 px”});
脚本>
将其替换为以下内容
< >脚本
标记,以导入main.js文件:<脚本src="main.js">脚本>
插入标签后的
< >脚本
引用ZAF SDK的标记。这确保SDK在之前加载main.js运行。的
<身体>
标签的iframe.html现在应该是这样的:<身体>
<h2>新领导为该组织h2>
<ul>
<李><一个href=""目标=“平等”>引领一个一个>李>
<李><一个href=""目标=“平等”>引领两个一个>李>
ul>
<脚本src="https://static.zdassets.com/亚博zendesk_app_framework_sdk/2.0/zaf_sdk.min.js">脚本>
<脚本src="main.js">脚本>
身体>
保存iframe.html而且main.js.要查看更改,请单击应用程序上方的刷新图标。
添加页脚
根据模型,页脚应该显示一个报告错误链接。这个链接允许用户报告应用程序的错误。
添加页脚链接
在iframe.html文件中,在脚本标签之前添加下面的页脚标签:
<页脚>
<一个href="https://example.com/support"目标="平等自愿">报告错误一个>
页脚>
保存iframe.html然后单击刷新图标。
在模型中,页脚文本较小。在下一步中,您将添加一些CSS样式的页脚和应用程序UI的其他部分。
添加样式
默认情况下,ZCLI导入Zendesk Garden样亚博式表iframe.html:
<链接rel="样式表"href="https://cdn.jsdelivr.net/combine/npm/@亚博zendeskgarden/<一个href="https://developer.zendesk.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="9dfeeeeeb0fff8f9eff2fef6dde5b3e4b3e7">(电子邮件保护)一个>,npm亚博/ @zendeskgarden /<一个href="https://developer.zendesk.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="1f7c6c6c326a6b7673766b767a6c5f6731663165">(电子邮件保护)一个>">
如果您希望您的应亚博用程序与Zendesk产品的外观和感觉相匹配,请使用Zendesk Garden资产。但是,应用程序不需要使用Zendesk Garden。亚博选择权在你。
这个应用程序将使用默认的Zendesk花园样式,并在一个单独亚博的样式表中添加修改main.css.
在iframe.html,添加以下内容
<链接>
标签后现有的Zendesk花园样式表:亚博<链接rel="样式表"href="main.css">
创建一个名为main.css在资产文件夹中。
添加以下规则到main.css:
身体{
margin-top:10px;
padding-left:40px;
}
h2{
margin-bottom:10px;
粗细:600;
}
ul{
list-style-type:阀瓣;
margin-left:25px;
}
页脚{
字体大小:10px;
margin-top:20.px;
}
保存iframe.html而且main.css.然后单击刷新图标。
改变logo
默认情况下,框架显示一个名为logo-small.png在你的资产文件夹中。如果要更改应用程序的logo,请替换logo-small.png在资产文件夹与您自己的图像。
你的替换logo-small.png文件应符合以下规格:
- 大小: 128x128像素。CSS将缩放图像以适应标题。同样的图像也将在Zendesk Sell UI中使用,并相应地缩放。亚博李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">文件格式:透明的PNG-24。李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">边境:没有。角将被CSS圆角化。李>
的资产文件夹还包括logo.png的形象。将此图像替换为320x320版本的logo。Zend亚博esk市场将显示这个版本的标志。销售管理员可以使用Zendesk Marketp亚博lace浏览要安装的公共或私人应用程序。
更换logo
右键单击以下每个图像链接,并将它们下载到资产文件夹在你的应用程序文件夹。如果出现提示,则同意替换文件的现有版本。
- [<一个href="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/related_leads/logo-small.png">logo-small.png一个>]李><李data-garden-id="typography.unordered_list_item" data-garden-version="8.39.0" class="sc-eKYRIR sc-gsWcmt jwhztf bMtobU">[<一个href="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/related_leads/logo.png">logo.png一个>]李>
单击刷新图标。
如果没有显示更新后的图像,则需要对页面进行硬刷新。参见<一个href="https://support.mozilla.org/en-US/kb/how-clear-firefox-cache">火狐一个>或<一个href="https://support.google.com/accounts/answer/32050">铬一个>在他们各自的网站上。还可以将页面URL粘贴到另一个浏览器中。
如果要转到下一个教程,可以让ZCLI服务器继续运行。如果完成了这个会话,可以切换到命令行界面并按Ctrl+C来关闭服务器。
在下一篇教程中,您将创建模板,在应用程序中显示销售线索和其他数据。继续<一个href="https://developer.zendesk.com/documentation/apps/build-an-app/build-your-first-sell-app/building-your-first-sell-app-part-3-creating-and-inserting-templates/">第3部分:创建和插入模板一个>.