Bootstrap的最新测试版(v4)使用Tether js来定位元素,我无法让它在我的Requirejs应用程序中运行.
在我的requirejs配置中,我有以下垫片
paths: {
jquery: '/path/to/jquery',
tether: '/path/to/tether'
},
shim: {
'bootstrap': ['tether', 'jquery']
}
Run Code Online (Sandbox Code Playgroud)
当我想在我的应用程序中激活工具提示时,我使用以下代码,我认为是正确的
function page_events() {
requirejs(['bootstrap'], function(bootstrap) {
$('[data-toggle="tooltip"]').tooltip();
});
}
Run Code Online (Sandbox Code Playgroud)
这应首先加载bootstraps依赖项,然后执行代码.所以通常应该在这段代码之前包含Tether.
但控制台的结果是
未捕获的ReferenceError:未定义系绳
有没有人有同样的问题?
我无法让我的'404页面'使用延迟加载模块.当我在浏览器中输入随机网址时,我只看到一个空白页而不是我的酷页404页.
这是我的路由配置
export const routes: Routes = [
{ path: '', redirectTo: 'dashboard', pathMatch: 'full'},
{ path: 'dashboard', loadChildren: 'app/dashboard/dashboard.module#DashboardModule'},
{ path: 'buckets', loadChildren: 'app/buckets/buckets.module#BucketsModule'},
{ path: '**', loadChildren: 'app/notfound/notfound.module#NotFoundModule'}
];
export const routing: ModuleWithProviders = RouterModule.forRoot(routes);
Run Code Online (Sandbox Code Playgroud)
当我浏览/桶时,我看到块正在延迟加载,它显示了在Buckets模块中配置的相应组件,没关系.
但它不适用于404错误页面.通常,路径的'**'应该适用于所有其他不存在的路由,但事实并非如此.
有人可以帮忙吗?
-angular2 final(2.0.0)
当 package.json 或 package-lock.json 中的某些内容发生更改时,Docker 不会使用构建缓存,即使这只是文件中的版本号,也不会更改任何依赖项。
我怎样才能实现它,以便 docker 每次都使用旧的构建缓存并跳过 npm install (npm ci)?我知道 docker 会查看文件的修改日期。但 package.json 根本没有改变,只是版本号改变了。
下面是我的 Dockerfile
FROM node:10 as builder
ARG REACT_APP_BUILD_NUMBER=X
ENV REACT_APP_BUILD_NUMBER="${REACT_APP_BUILD_NUMBER}"
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY .npmrc ./
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM nginx:alpine
COPY nginx/nginx.conf /etc/nginx/nginx.conf
COPY --from=builder /usr/src/app/build /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Run Code Online (Sandbox Code Playgroud) angular ×1
build ×1
caching ×1
docker ×1
javascript ×1
npm ×1
package.json ×1
requirejs ×1
routing ×1
tether ×1