NodeJS 根据URL路径使用不同的CSS文件

vaqhlq81  于 2023-10-17  发布在  Node.js
关注(0)|答案(2)|浏览(146)

我有以下文件:App.vuechangcolor.vueconfig.jsonmain.jsindex.htmlxyz.cssabc.css
根据URL,我想应用正确的CSS文件,例如,如果URL是“xyz.local.com“,那么我们将使用xyz.css,如果“abc.local.com“,那么我们将使用abc.local.com。而这也应该是白色的标签码。

uemypmqf

uemypmqf1#

创建一个新的link标记,并根据URL的内容给予适当的属性,怎么样?就像这样:

mounted() {
    let link = document.createElement('link');  
    link.rel = 'stylesheet';  
    link.type = 'text/css'; 
    let hostname = window.location.hostname
    hostname = name.split(".")[0]
    if(hostname == "abc"){
        link.href = "abc.css"
    } else {
        link.href = "xyz.css"
    }
    document.getElementsByTagName('HEAD')[0].appendChild(link);
}
zujrkrfu

zujrkrfu2#

通过检查当前窗口位置,我们可以解决这个问题。我们只需要检查路径名并加载css文件。

//First get the pathname from current window location
const path = window.location.pathname;

//Now we can check whether our current location meet the path we wanted to check
if (path.includes('page-name-1')) {
  loadCSSFile('css/page1.css');
} else if (path.includes('page-name-2')) {
  loadCSSFile('css/page2.css');
} else {
  loadCSSFile('css/page3.css');
}

//This function will create a link tag in our site and load the file. This function take href as a parameter
function loadCSSFile(href) {
  const linkElement = document.createElement('link');
  linkElement.rel = 'stylesheet';
  linkElement.href = href;
  document.head.appendChild(linkElement);
}

相关问题