Sulu 2.0:如何在admin视图中添加自定义css和js
Sulu 2.0: How to add custom css and js to the admin view
是否可以将自定义 css 和自定义 js 文件添加到 sulu 管理员?
我看到,它是由 vendor/sulu/sulu/src/Sulu/Bundle/AdminBundle/Resources/views/Admin/main.html.twig
渲染的单页应用程序
我能以某种方式覆盖这个模板吗?或者更好的是,有没有一种方法可以扩展它,而不会丢失未来提交给捆绑包的更新?
非常感谢!
安德烈亚斯
您可以使用 webpack 别名覆盖 .scss
中的特定 .scss
文件,例如登录 scss:
config.resolve.alias[loginScssPath] = path.resolve(__dirname, 'style-overwrites/login.scss');
然后在文件中执行如下操作:
/* import original stylesheet to keep original styling */
@import 'sulu-admin-bundle/containers/Login/login.scss';
/* overwrite style for specific elements */
.login-container {
background-color: lightpink;
}
这个例子也可以在这里找到:https://github.com/sulu/sulu-demo/pull/62/files
想提一下,没有为这种覆盖提供 bc-promise。
现在使用 2.4(或者甚至更早)自定义 js 可以简单地添加到
assets/admin/app.js
通过这个,您可以完全更改页面上的任何内容;)
(function (d) {
// inject the global navigation
const script = d.createElement('script');
const style = d.createElement('link');
const head = d.querySelector('head');
style.setAttribute('href', '/path/to/some.css');
style.setAttribute('rel', 'stylesheet');
head.append(style);
script.async=true;
script.src='/path/to/some.js';
head.append(script);
})(document)
是否可以将自定义 css 和自定义 js 文件添加到 sulu 管理员?
我看到,它是由 vendor/sulu/sulu/src/Sulu/Bundle/AdminBundle/Resources/views/Admin/main.html.twig
我能以某种方式覆盖这个模板吗?或者更好的是,有没有一种方法可以扩展它,而不会丢失未来提交给捆绑包的更新?
非常感谢!
安德烈亚斯
您可以使用 webpack 别名覆盖 .scss
中的特定 .scss
文件,例如登录 scss:
config.resolve.alias[loginScssPath] = path.resolve(__dirname, 'style-overwrites/login.scss');
然后在文件中执行如下操作:
/* import original stylesheet to keep original styling */
@import 'sulu-admin-bundle/containers/Login/login.scss';
/* overwrite style for specific elements */
.login-container {
background-color: lightpink;
}
这个例子也可以在这里找到:https://github.com/sulu/sulu-demo/pull/62/files
想提一下,没有为这种覆盖提供 bc-promise。
现在使用 2.4(或者甚至更早)自定义 js 可以简单地添加到
assets/admin/app.js
通过这个,您可以完全更改页面上的任何内容;)
(function (d) {
// inject the global navigation
const script = d.createElement('script');
const style = d.createElement('link');
const head = d.querySelector('head');
style.setAttribute('href', '/path/to/some.css');
style.setAttribute('rel', 'stylesheet');
head.append(style);
script.async=true;
script.src='/path/to/some.js';
head.append(script);
})(document)