Son zamanlarda Webpack’e tanıtıldım ve Angular 1 ve Webpack’i ES6’ya bir Starter Pack’i kullanmaya çalışıyorum. Şimdiye kadar tanrı. Bu gibi şeyler yaratabiliyorum: Bu, kişisel olarak gerçekten çok hoşuma giden bir şeydir. Ancak, sorun ngtemplate-loader ile birlikte gelir. Benim web paketi yapılandırma görünüyor biri böyle: BenAçısal 1.X, webpack ve ngtemplate yükleyici sorunu
ERROR in ./static/js/modules/user/index.js
Module not found: Error: Cannot resolve module '.modules/user/user-create.html' in /Users/alaguna/project/static/js/modules/user
@ ./static/js/modules/user/index.js 15:18-75
:
import angular from 'angular';
import uiRouter from 'angular-ui-router';
import userCreateTemplate from './user-create.html';
const MODULE_NAME = 'nukehome.user';
const ngModule = angular.module(MODULE_NAME, [
uiRouter
]);
ngModule.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('user', {
url: '/user/',
templateUrl: userCreateTemplate,
controller: function() {
console.log('Hi user');
}
});
$urlRouterProvider.otherwise('/404/');
});
export default ngModule;
Bu hata ile sefil başarısız: Böyle bir şey yapmaya çalıştıklarında
webpack: {
context: '<%= ui %>/js',
entry: ['babel-polyfill', './index.js'],
output: {
path: '<%= build %>/js',
filename: '<%= package.name %>.js'
},
module: {
loaders: [
{
test: /\.html$/,
loader: 'ngtemplate?relativeTo=' + (path.resolve(__dirname, './static/js')) + '/!html'
},
{
test: /\.js$/,
exclude: /(node_modules|bower_components)/,
loader: 'ng-annotate',
query: {
map: false
}
}, {
test: /\.js$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel',
query: {
cacheDirectory: true,
presets: ['es2015']
}
}
]
}
, Ve ihtiyaç ile denedi ve çıktı aynı görünüyor. İşte ağaç:
├── Gruntfile.js
├── app.js
├── bin
│ └── www
├── config
│ └── config.json
├── content
│ └── data
│ └── nukehome.db
├── core
│ ├── models
│ │ ├── device.js
│ │ ├── index.js
│ │ └── user.js
│ └── server
│ ├── auth.js
│ └── utils
│ └── gravatar.js
├── grunt
│ ├── develop-tasks.yaml
│ ├── scripts-tasks.yaml
│ ├── styles-tasks.yaml
│ └── webpack.js
├── package.json
├── public
│ ├── css
│ │ └── nukehome.css
│ └── js
│ └── nukehome.js
├── static
│ ├── css
│ │ └── nukehome.css
│ ├── js
│ │ ├── app.controller.js
│ │ ├── index.js
│ │ └── modules
│ │ └── user
│ │ ├── index.js
│ │ └── user-create.html
│ └── scss
│ └── nukehome.scss
└── views
├── error.hbs
├── index.hbs
└── layout.hbs
Benim asıl soru, ben ngtemplate-yükleyici içten yolları depolamak (veya WebPack onları sunma) nasıl çalıştığını görmek için yapabileceğim bir şey var mı?
Yanlış olarak ortaya çıkan bir şey var mı?
Şablonla birlikte çıktılar ve dosyaların geri kalanıyla uyuşan herhangi bir grunt|gulp
görevini çalıştırmak gibi bunu yapmak için başka yollar kullanabileceğimi biliyorum. Ancak bunun ne kadar karmaşık olduğunu seviyorum.
DÜZENLEME: Bunu herkesin bununla oynayabilmesi için Github'a yükledim.
Bu kesinlikle mantıklı. Ancak hala başarısız oluyor: 'ERROR in ./static/js/modules/user/user-create.html Modül yapısı başarısız oldu:'. Bu şablon sadece şu: '
LoL
' –Modül yapılama başarısız olduktan sonra hata mesajı oluştu: '? –
'Modül yapılamadı: @ ./static/js/modules/user/index.js 15: 18-47' –