# FAQs 参考:[Part 6\. FAQs | Dash for Python Documentation | Plotly](https://dash.plotly.com/faqs) 问:如何自定义 Dash 应用程序的外观? 答:Dash 应用程序在浏览器中呈现为符合现代标准的 Web 应用程序。这意味着您可以像使用标准 HTML 一样使用 CSS 来设置 Dash 应用的样式。 所有`dash-html-components`都通过`style`属性支持内联 CSS 样式。通过定位组件的 ID 或类名称,外部 CSS 样式表还可用于设置`dash-html-components`和`dash-core-components`的样式。`dash-html-components`和`dash-core-components`都接受属性`className`,该属性对应于 HTML 元素属性类。 [Dash HTML Components](https://dash.plotly.com/dash-html-components) 中的“Dash HTML组件”部分说明了如何为`dash-html-components`提供内联样式和 CSS 类名,您可以使用 CSS 样式表作为目标。Dash指南中的[Adding CSS & JS and Overriding the Page-Load Template](https://dash.plotly.com/external-resources)部分说明了如何将自己的样式表链接到 Dash 应用。 ---- 问:如何将 JavaScript 添加到 Dash 应用程序? 答:您可以将自己的脚本添加到 Dash 应用程序中,就像将 JavaScript 文件添加到 HTML 文档中一样。请参阅《Dash 指南》中的[Adding CSS & JS and Overriding the Page-Load Template](https://dash.plotly.com/external-resources)部分。 ---- 问:我可以制作包含多个页面的 Dash 应用程序吗? 答:是的!Dash 支持多页应用程序。请参阅《Dash用户指南》中的[Multi-Page Apps and URL Support](https://dash.plotly.com/urls)部分。 ---- 问:如何将 Dash 应用程序组织成多个文件? 答:可以在《Dash用户指南》的[Multi-Page Apps and URL Support](https://dash.plotly.com/urls)部分中找到执行此操作的策略。 --- 问:如何确定哪个输入已更改? 答:请参阅[Advanced Callbacks](https://dash.plotly.com/advanced-callbacks)部分中的`dash.callback_context`。 --- 问:我可以将 Jinja2 模板与 Dash 一起使用吗? 答:Jinja2 模板在作为 HTML 页面发送到客户端之前,先在服务器上呈现(通常在 Flask 应用程序中)。另一方面,Dash 应用程序是使用 React 在客户端上呈现的。这使这些在浏览器中显示 HTML 的方法截然不同,这意味着这两种方法无法直接组合。但是,您可以将 Dash 应用程序与现有的 Flask 应用程序集成在一起,以便 Flask 应用程序可以处理某些 URL 端点,而 Dash 应用程序位于特定的 URL 端点。 --- 问:我可以将 jQuery 与 Dash 一起使用吗? 答:在大多数情况下,您不能这样做。Dash 使用 React 在客户端浏览器上呈现您的应用程序。React 与 jQuery的根本不同之处在于,它利用虚拟 DOM(文档对象模型)来管理页面呈现。由于 jQuery 不会讲 React 的虚拟DOM,因此您无法使用 jQuery 的任何 DOM 操作工具来更改页面布局,这经常就是为什么要使用 jQuery 的原因。但是,您可以使用 jQuery 功能中不接触 DOM 的部分,例如注册事件侦听器以使击键导致页面重定向。 通常,如果您希望在应用程序中添加自定义客户端行为,我们建议将该行为封装在[自定义 Dash 组件](https://dash.plotly.com/plugins)中。 ---- 问:那些很棒的撤消和重做按钮去哪了? 答:好的,主要是我们遇到了相反的问题:[How do I get rid of the undo/redo buttons](https://community.plotly.com/t/is-it-possible-to-hide-the-floating-toolbar/4911/10)。尽管从技术角度来看此功能很简洁,但大多数人在实践中并不认为它有价值。从 Dash 1.0 开始,默认情况下会删除按钮,不需要任何怪异的 CSS 技巧。如果您想让他们回来,请使用 `show_undo_redo`: ```python app = Dash(show_undo_redo=True) ``` --- 问:我还有其他问题!我在哪里可以问他们? 答:[Dash 社区论坛](https://community.plotly.com/c/dash)上挤满了讨论 Dash 主题,互相帮助的人以及共享Dash创作的人。跳过并加入讨论。 ## dash.exceptions.DependencyException: Error loading dependency. "plotly" is not a registered library. ```python app = Dash( __name__, eager_loading=True, # 修复 dash.exceptions.DependencyException: Error loading dependency. "plotly" is not a registered library. ) ```