问题标签 [soy-templates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
53 浏览

html - 具体哪些外部 CSS 文件覆盖哪些

我正在开发一个使用 SOY 模板和 SASS 的网络项目。由于某些原因,我无法让 SASS 预处理器继续与 SASS 一起工作,但所有 CSS 和 SCSS 文件都存在,我可以查看它们,但不能修改。

我目前有一个正在处理的自定义 CSS 文件,但是 SASS 创建的 CSS 文件会覆盖某些内容。例如,!important当某些事情被覆盖时,通常只会让添加我自己的 CSS 变得更加困难。

所以我的问题是,有没有办法指定最后调用哪个 CSS 文件,以便可以覆盖所有以前的 CSS?

0 投票
1 回答
85 浏览

exception - 在闭包模板中调用 deltemplate 时出现奇怪的错误

我在项目中使用了一些委托模板,我使用相同的方法,但在某些情况下我有例外。这是我得到的例外:

有人可以解释在大豆文件中使用委托模板的最佳方法是什么。

0 投票
1 回答
774 浏览

google-closure-templates - 在 Soy V2 中创建参数的正确方法是什么?

这是我的代码:

当我尝试编译时,我收到一条错误消息:

我在网上找到的唯一信息似乎表明这是正确的语法(根据谷歌的网站,根据我找到的这份备忘单),谷歌搜索“soy v2”并没有给我任何解释什么是正确的结果 Soy V2 语法。

定义这些参数的正确方法是什么?

0 投票
1 回答
157 浏览

javascript - Closure Compiler (soy) - [JSC_BAD_JSDOC_ANNOTATION] 解析错误。非法使用未知 JSDoc 标签“consistentIdGenerator”

升级到最新的闭包编译器 jar 后,我收到此错误:

我该如何解决这个问题?

0 投票
1 回答
385 浏览

bitbucket - 自定义 Bitbucket 合并检查 - 提交配置后动态字段呈现两次

我正在为 Bitbucket 创建自定义合并检查。我从遵循本教程开始: https ://developer.atlassian.com/server/bitbucket/how-tos/hooks-merge-checks-guide/

我希望视图是动态的,例如具有创建多个相似输入字段(具有指定 ID)的按钮,这些字段最终存储在配置中。

首先,我为此使用了soy——我创建了一个调用例如.textField 的静态模板。它工作正常,但我无法即时创建新的类似字段(按下“添加新”按钮后)。

所以我使用 JavaScript 从 soy 的配置中获取数据。我将整个配置重写为 JS “map”,然后动态渲染所有字段(通过将它们附加到 HTML 代码),用配置中的值填充它们或通过按下按钮创建新字段。

它有效 - 我将所有数据保存在配置中,用于字段_[id]等键,例如字段_1、字段_2等。

但是有一个错误。当我按下“保存”按钮并再次查看弹出窗口进行编辑时,我可以看到 JavaScript 被执行了两次:我的所有字段都呈现了两次——第一次是在第一次执行期间,第二次是在第二次执行期间,出现几秒钟后。保存配置,刷新页面,再次查看弹窗,就没有这个问题了。

这是我在文件中的合并检查配置atlassian-plugin.xml

还有我简化的 .soy 模板代码:

为什么在这种情况下 JavaScript 会执行两次?有没有其他方法可以创建这样的动态视图?

0 投票
1 回答
340 浏览

confluence - Atlassian Confluence 蓝图向导 - 不存在的大豆模板

我正在构建一个融合插件,包括带有蓝图的蓝图向导对话框。但是当我尝试加载向导时,浏览器控制台中出现JS错误,

未捕获的错误向导指向一个不存在的 Soy 模板 OutputPlugin.Blueprints.Simple.page1Form'。检查您的网络资源或服务器日志。

我尝试过的是,

  • 检查服务器日志。没有证据。
  • 尝试清理并重新安装插件和 SDK。

但是,我已经将大豆添加到atlassian-plugin.xml文件中的网络资源中。

我按照 atlassian confluence 插件教程“编写中间蓝图插件

我正在使用 Confluence 6.14.0 和 atlasisian SDK 8.16.0

atlassian-plugin.xml

输出模板.soy

0 投票
0 回答
60 浏览

liferay - 如何在 soy 文件中嵌入 webcontent/portlet - Liferay 7?

有没有办法在 Liferay 的 soy 文件中嵌入 web 内容或 portlet?有人可以与我分享代码库以继续吗?

提前非常感谢!

0 投票
1 回答
56 浏览

google-closure-templates - 闭包模板 - 为复杂的“记录”定义创建一个可重用的别名

我有一个看起来像的大豆模板

由于“人”的记录定义变得比年龄和姓名更复杂,因此更新所有三个地方的参数定义变得乏味。是否可以创建一个别名或可以在每个模板中重用的东西?

0 投票
1 回答
182 浏览

javascript - 通过 Javascript 和 jQuery 呈现闭包模板(大豆模板)的问题

我使用 javascript 和 jQuery 来呈现闭包模板(大豆模板)。我正在关注它的hello world示例。
我的jsfiddle在这里

示例中所述,以下代码有效,

document.write(soy.examples.simple.helloWorld());

& 提供

你好世界!

但是当与 jQuery 一起使用动态插入闭包模板的内容时,它总是返回空,没有附加任何内容。 $('#withoutContent').append(soy.examples.simple.helloWorld());


具有讽刺意味的是,进一步看,以下 jQuery 可以正常工作

$('#withContent').append(soy.examples.simple.helloWorld().content);


我在从非常旧版本的闭包模板升级时遇到了这个问题。我们有很多这样的模板,在 javascript 中更新每个模板的用法.content很麻烦且容易出错。
为什么 jQuery 不能正确获取模板的内容?

0 投票
0 回答
23 浏览

liferay - 从大豆模板调用 ResourceURL

我正在开发一个新的 DDMFormField 来以默认 uploadFiles 字段 liferay 所做的其他方式管理上传文件。

我已经看到自定义 DDMFormField 的基本结构是使用大豆模板,而我的问题是,当我尝试从大豆模板或 *es.js 文件中调用 resourceCommand 类时,我无法使用 portlet:ResourceURL 之类的标签当我开发一个通用的 portlet 时,我曾经在 jsp 中使用过。

可以从 soy 模板或 *.es.js 文件中调用 ResourceCommand 类吗?在这种情况下,我该怎么做?